Java Android自定义进度条组件
我想创建一个进度条,当递增时它会自动向上滑动。我已经对滑动位进行了排序(使用java),但现在想创建一个自定义进度条组件。这就是我到目前为止所做的:Java Android自定义进度条组件,java,android,xml,Java,Android,Xml,我想创建一个进度条,当递增时它会自动向上滑动。我已经对滑动位进行了排序(使用java),但现在想创建一个自定义进度条组件。这就是我到目前为止所做的: public class Smooth_Progress_Bar extends ProgressBar{ public Smooth_Progress_Bar(Context context) { super(context); } } 我正在使用以下XML代码: <?xml version="1.0" encoding
public class Smooth_Progress_Bar extends ProgressBar{
public Smooth_Progress_Bar(Context context) {
super(context);
}
}
我正在使用以下XML代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.todddavies.content.smoothprogressbar.Smooth_Progress_Bar
android:layout_width="fill_parent"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_height="50dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:progressDrawable="@drawable/pb"/>
</LinearLayout>
我得到一个直接的力量接近:/
我强烈怀疑我在java位上犯了什么大错。我保证勾选正确的答案 我使用您的代码制作了一个项目,代码完全相同(甚至对象名为“Smooth\u Progress\u Bar”)。
这一切都进行了编译,运行良好。 这就剩下: 您可能需要所有三个构造函数,例如:
public Smooth_Progress_Bar(Context context) {
super(context);
}
public Smooth_Progress_Bar(Context context, AttributeSet attrs) {
super(context, attrs);
}
public Smooth_Progress_Bar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
或者您的问题在您的
progressDrawable
中。如果可绘制的是xml,则它可能包含错误。尝试构造函数,如果这不起作用,请检查您的drawable。您可以发布从LogCat获得的堆栈跟踪吗?他不需要所有三个。他只需要两个具有AttributeSet参数的构造函数中的一个。没错,我很懒。中间那个就行了。