Olu*_*mbi 0 java android overriding view
我想知道如何View从我的代码扩展我的布局中的一个类。我见过不同的例子,我们说例如:
listView = new ListView(this){
//Override some methods here
}
Run Code Online (Sandbox Code Playgroud)
现在,如果ListView我的布局中已经有了,但我仍然想覆盖某些内容,该怎么办。例如,我可以ListView从布局内部引用的唯一方法是:
listView = (ListView)findViewById(R.id.mylistView);
Run Code Online (Sandbox Code Playgroud)
所以从这个例子我如何覆盖列表视图的方法。请我只是一个普通的android程序员。请赐教。
您要么必须以编程方式构建您的布局(这在大多数情况下都是乏味和烦人的),或者在命名类中继承 ListView 并将其添加到您的布局中。这是第二个选项的样子:
public class MyListView extends ListView {
public MyListView(Context context) {
super(context);
}
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyListView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
public MyListView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
// override other methods here
}
Run Code Online (Sandbox Code Playgroud)
在您的布局文件中,使用
<com.your.package.MyListView
android:layout_width="..."
android:layout_width="..."
... />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1278 次 |
| 最近记录: |