BinderData
を拡張するという名前のクラスがありますBaseAdapter
。基本クラスのコンテキストを取得したい。使用しようとしましgetContext()
たが、の場合は機能しませんBaseAdapter
。
このクラスのコンテキストを取得するにはどうすればよいですか?
BinderData
を拡張するという名前のクラスがありますBaseAdapter
。基本クラスのコンテキストを取得したい。使用しようとしましgetContext()
たが、の場合は機能しませんBaseAdapter
。
このクラスのコンテキストを取得するにはどうすればよいですか?
もう1つの解決策-
親がいる場合は、次のようにコンテキストに直接アクセスできます-
public class SampleAdapter extends BaseAdapter {
LayoutInflater inflater;
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(inflater == null){
Context context = parent.getContext();
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
...
...
return convertView;
}
}
Context
引数の 1 つとしてa を取り、それをプライベート変数に格納するコンストラクターを作成します。
public class SampleAdapter extends BaseAdapter {
private Context context;
public SampleAdapter(Context context) {
this.context = context;
}
/* ... other methods ... */
}