Android自定义视图ClassNotFound - java

我敢肯定这是一个愚蠢的问题,但是我在任何地方都找不到答案。我正在尝试在Android中创建自定义的View XML元素(使用Xamarin,因此从技术上讲它是C#,尽管我认为这并不重要)。我找到了很多教程,但似乎没人能解释路径的来源。例如,google示例如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:custom="http://schemas.android.com/apk/res/com.example.customviews">
 <com.example.customviews.charting.PieChart
     custom:showText="true"
     custom:labelPosition="left" />
</LinearLayout>

com.example.customviews.charting来自哪里?我发现的所有示例都没有解释如何创建此路径。我发现有人说这是程序包名称,但是我的程序包名称看起来不像这样(也许在生成文件时我做错了什么?):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="AndroidDemo.AndroidDemo" android:versionCode="1" android:versionName="1.0" android:installLocation="auto">

现在,我已经在布局中得到了这个:

<AndroidDemo.AndroidDemo.DragRectView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/dragRect" />

这将导致Android.View.InflateException和java.lang.ClassNotFoundException。

我确定我的DragRectView(我的班级)路径错误;谁能给我一些指导,弄清楚它是什么吗?

参考方案

com.example.customviews.charting是您的自定义视图所在的包,因此com.example.customviews.charting.PieChart是com.example.customviews.charting包中的PieChart类。

如果com.example.customviews.charting中实际上没有类PieChart,则将获得ClassNotFoundException。

在您的自定义视图类文件中,查找以下代码行以了解您所处的软件包:

package com.mypackage;

如果不存在,您将使用默认软件包,建议您添加它以简化生活。

你的课应该是这样的

package com.mypackage;
public class PieChart extends View {
    ...Your Implementation of PieChart goes here...
}

Android:如何为wrap_content设置高度动画? - java

我需要使用ValueAnimator来使用户拖动特定视图时出现自定义“放置字段”。 (我想将字段从gone, height = 0更改为visible, height = wrap_content)。我已经尝试过以下问题的解决方案:How to animate to wrap_content?当我在单个TextView上使用它时,答案就起作用了,但是当我尝试…

如何使Textview只显示最后4位数字 - java

我的Textview从SQLite获取数据,但我想使Textview显示如下:************ 1234,而不是1234123412341234。 enter image description here 参考方案 String number = "grou353fp23g3qprwog9512"; String mask = n…

从服务器加载XML布局(android) - java

我对此问题进行了大量研究,但没有得到想要的答案。所以我确实有一个应用程序从服务器获取字符串。字符串系列采用XML格式。这是我将从服务器获得的示例(如您所见,它是一个布局):<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:to…

android-android studio模拟器中的SSL问题,在手机上可以正常工作 - java

我有一个可以通过https调用网络服务的应用程序。当我在手机上运行apk时,效果很好。但是,在模拟器中,所有通过POST的SSL请求均失败,并显示以下信息: 读取错误:ssl = 0xb402be00:SSL库失败,通常是一个协议 错误 错误:100c50bf:SSL例程:ssl3_read_bytes:NO_RENEGOTIATION(外部/无聊的sl /…

为什么我的应用在启动时总是崩溃-Android - java

刚刚遵循了有关如何制作按钮和活动的youtube指南。我按照他的代码减小字体大小,并且在启动时一直崩溃。有人知道为什么吗?public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { su…