EGH*_*HDK 0 java android android-arrayadapter android-listview android-adapter
我正在尝试在我的适配器的getView方法中扩展布局:
这是错误:
01-18 20:58:04.873: E/AndroidRuntime(21583): java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
01-18 20:58:04.873: E/AndroidRuntime(21583): at android.widget.AdapterView.addView(AdapterView.java:478)
01-18 20:58:04.873: E/AndroidRuntime(21583): at android.view.LayoutInflater.inflate(LayoutInflater.java:500)
01-18 20:58:04.873: E/AndroidRuntime(21583): at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
01-18 20:58:04.873: E/AndroidRuntime(21583): at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
01-18 20:58:04.873: E/AndroidRuntime(21583): at com.myname.myapp.gui.MyAdapter.getView(MyAdapter.java:46)
Run Code Online (Sandbox Code Playgroud)
错误(根据日食发生在 converView =mInflater...
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if (convertView == null) {
convertView = mInflater.inflate(
android.R.layout.simple_list_item_1, parent);
}
((TextView) convertView.findViewById(R.id.text1)).setText(titles
.get(position));
return convertView;
}
Run Code Online (Sandbox Code Playgroud)
这是我的适配器的构造函数:
public MyAdapter(ArrayList<String> list, Context context) {
titles = list;
this.context = context;
mInflater = LayoutInflater.from(context);
}
Run Code Online (Sandbox Code Playgroud)
最好的方法是
convertView = mInflater.inflate(android.R.layout.simple_list_item_1, parent, false);
Run Code Online (Sandbox Code Playgroud)
是的,您应该传递实际的父级,因为布局可能会影响通胀中使用的参数.第三个参数表示方法是否inflate应该将视图添加到父级.
默认情况下,它会将视图添加到父级,在这种情况下,您希望返回视图但不将其添加到父级.
你可以在这里阅读:
从指定的xml资源中扩充新的视图层次结构.如果出现错误,则抛出InflateException.
参数:
要加载的XML布局资源的资源ID(例如,R.layout.main_page)
root 可选视图是生成的层次结构的父级(如果attachToRoot为true),或者只是为返回的层次结构的根提供一组LayoutParams值的对象(如果attachToRoot为false).
attachToRoot 是否应将膨胀的层次结构附加到根参数?如果为false,则root仅用于为XML中的根视图创建LayoutParams的正确子类.
返回膨胀层次结构的根视图.如果提供了root并且attachToRoot为true,则为root; 否则它是膨胀的XML文件的根.
| 归档时间: |
|
| 查看次数: |
1842 次 |
| 最近记录: |