アクティビティをフラグメント クラスに接続しようとすると、null ポインター エラーが発生します。アクティビティ クラスはリスト アクティビティであり、特定のリストをクリックすると、フラグメント クラスが開く必要があります。任意のボディにサンプル コードが含まれているか、ソリューションが提供されます。フラグメント クラス名は Termfragment..
私はリストアクティビティクラスでこのコードを使用しました:
public class HelpActivity extends ListActivity {
Context myContext=this;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
String[] helplist = getResources().getStringArray(R.array.helplist);
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_view, R.id.label, helplist));
ListView lv = getListView();
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
TermFragment mytermfragment = new TermFragment(myContext);
getSupportFragmentManager().beginTransaction().add(R.id.mytermfragment_container, mytermfragment).commit();
mytermfragment.show(getSupportFragmentManager(),"mytermfragment");
}
});
}
}
TermFragment クラス:
public class TermFragment extends DialogFragment implements DialogInterface.OnClickListener {
private Context termContext;
private AlertDialogListener mListener;
public TermFragment(Context context) {
termContext=context;
}
public interface AlertDialogListener
{
public void onDialogPositiveClick(DialogFragment dialogFragment);
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Log.i("help","onCreateDialog");
AlertDialog.Builder builder = new AlertDialog.Builder(termContext);
LayoutInflater inflater = getActivity().getLayoutInflater();
builder.setTitle("Terms");
builder.setView(inflater.inflate(R.layout.terms_view, null));
builder.setPositiveButton("I AGREE", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
mListener.onDialogPositiveClick(TermFragment.this);
}
});
AlertDialog alertDialog = builder.create();
Log.i("alert","alertDialog Created");
return alertDialog;
}
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
}