そこでDialogFragment
、アラートダイアログを表示するための.javaファイルを作成しました。ここのチュートリアルを使用して、リスト付きのAlertDialogを作成しました。
ContactList.javaファイルでこのフラグメントを参照するにはどうすればよいですか?チュートリアルからこれを行う方法であると私が理解したことは、うまくいかなかったようです。ContactList.javaファイルの以下のコードを使用してonClickイベントを実行しようとすると、の下に赤い波線が表示されgetSupportFragmentManager()
ます。これが私がフラグメントのために持っているコードです:
public class StatusDialogFragment extends DialogFragment {
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the Builder class for convenient dialog construction
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.choose_status);
builder.setItems(R.array.status_choices,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dismiss();
}
});
return builder.create();
}
}
関連するContactList.javaファイルコードは次のとおりです。
public class ContactList extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_contact_list);
Intent intent = getIntent();
}
public void chooseStatus(View view) {
DialogFragment newFragment = new StatusDialogFragment();
newFragment.show(getSupportFragmentManager(), "statuschoice");
}
最後に、ダイアログを開きたいボタンのXMLコードを次に示します。
<ImageButton
android:id="@+id/status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/status_available_icon"
android:onClick="chooseStatus" />
御時間ありがとうございます。