Android 开发,控件开发(大神请进!……)
在Android开发中,对于一些容器控件,怎么定义和开发。就是自定义的控件,在引用使用这个控件的时候,需要往这个控件里面放其他的控件(比如button控件等)。这样的容器...
在Android开发中,对于一些容器控件,怎么定义和开发。就是自定义的控件,在引用使用这个控件的时候,需要往这个控件里面放其他的控件(比如button控件等)。这样的容器控件该如何定义属性呢!Android的自定义控件和C#中的有点不同,现在刚刚接触Android,求高手指教!
展开
2个回答
展开全部
其实一些基础属性系统控件已经有了,比如button,你可以继承button,然后新增一些自己的属性。自己定义的,在或者你想定义一个新的button,可以继承view,然后参照button类,写出自己的button。
不过自定义控件要对系统比较熟悉,不然会有很多麻烦事情,比如event的分发,各种背景设置,选择器设置。非常麻烦,是个细心的活。可以参考http://developer.android.com/guide/topics/ui/custom-components.html
不过自定义控件要对系统比较熟悉,不然会有很多麻烦事情,比如event的分发,各种背景设置,选择器设置。非常麻烦,是个细心的活。可以参考http://developer.android.com/guide/topics/ui/custom-components.html
追问
恩,谢谢!
我再问一下,就是像一般的 容器控件 的话,需要继承什么,也是继承view吗,有没有相关的容器自定义的控件开发的案例?
3Q
追答
百度瀑布流,就是自定义容器,
展开全部
这是一个自定义的TextView,在xml中用的时候就包名+类名其他的属性还是不变
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TextView;
public class My_TextView extends TextView {
public My_TextView(Context context) {
super(context);
this.setOnClickListener(clickListener);
}
public My_TextView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
this.setOnClickListener(clickListener);
}
OnClickListener clickListener=new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
onCreateDialog().show();
}
};
/**
* 创建日期及时间选择对话框
*/
protected Dialog onCreateDialog() {
Dialog dialog = null;
Calendar c = Calendar.getInstance();
dialog = new DatePickerDialog(
getContext(),
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker dp, int year,int month, int dayOfMonth) {
setText("您选择了:" + year + "年" + (month+1) + "月" + dayOfMonth + "日");
}
},
c.get(Calendar.YEAR), // 传入年份
c.get(Calendar.MONTH), // 传入月份
c.get(Calendar.DAY_OF_MONTH) // 传入天数
);
return dialog;
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询