MySpinner.java
以下は私のカスタムアダプターです
public class MyAdapter extends ArrayAdapter<String>
{
public MyAdapter(Context context, int textViewResourceId,String[] objects)
{
super(context, textViewResourceId, objects);
// TODO Auto-generated constructor stub
}
public View getDropDownView(int position, View convertView,ViewGroup parent)
{
return getCustomView(position, convertView, parent);
}
public View getView(int position, View convertView, ViewGroup parent)
{
return getCustomView(position, convertView, parent);
}
public View getCustomView(int position, View convertView, ViewGroup parent)
{
inflater1=(LayoutInflater)this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
rowlayout=inflater1.inflate(R.layout.spinnerlayout, parent, false);
txt1=(TextView)rowlayout.findViewById(R.id.textView1);
txt1.setText(s[position]);
txt1.setTextSize(TypedValue.COMPLEX_UNIT_DIP,DropDownTextSize);
txt1.setHeight(RowSize);
return rowlayout;
}
}
別のプロジェクトでカスタムスピナーを作成し、ライブラリプロジェクトとしてマークしました。
線形レイアウトのmain.xmlファイルがあるとします。カスタムスピナーのみを追加すると、main.xmlが同じプロジェクトまたは他のプロジェクトにある場合でも、エラーなしで正常に動作します。
しかし、カスタムスピナーと一緒に線形レイアウトに他のウィジェットを追加すると、そのmain.xmlが同じプロジェクトにない場合にのみ、nullポインター例外が発生します。
同じプロジェクトのmain.xmlの場合、問題なく機能します。
1)ターゲットAPIが異なるプロジェクトのパレットにカスタムスピナーが表示されないのはなぜですか?
2)他のプロジェクトのmain.xmlで、カスタムスピナーのみを追加すると、正しく機能しますが、ボタン、テキストビューなどの他のコンポーネントが一緒にある場合は、nullポインター例外が発生します。
txt1.setText(s[position]);
なぜこれが起こるのですか?