public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView= LayoutInflater.from(context).inflate(R.layout.sidebyside, parent, false);
}
TextView textView=(TextView)findViewById(R.id.txtview);
EditText editText=(EditText)findViewById(R.id.ScanText);
textView.setText(str[position]);
return convertView;
}
我在第textView.setText(str[position])
行收到NullpointerException我甚至在调试模式下检查过它。在我提到的行中,Text View为null。但是它存在于XML文件中
sidebyside的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtview"
android:text="subject"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.3"
android:textSize="30sp"
android:textStyle="bold"
android:gravity="right" />
<EditText
android:id="@+id/ScanText"
android:hint="Internal+External"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.7"
android:textSize="30sp"
/>
</LinearLayout>
为什么我得到这个?
答案 0 :(得分:1)
找不到TextView/EditText
(因此为空),因为您没有以正确的布局查找它们。您正在将xml扩展为convertView
,因此请在其上调用findViewById
:
TextView textView=(TextView)convertView.findViewById(R.id.txtview);
答案 1 :(得分:0)
您是否有不同方向的多个版本的布局?
如果是这样,您需要检查所有内容。 这是正确存在时无法找到字段的正常原因。