나는 안드로이드 프로그래밍에 초보 다. 현재 내 앱에 미디어 플레이어를 통합하고 있습니다. 메뉴를 통해 사용자가 소리를 끌지 말고 원하는 경우 다시 시작하기를 원합니다. 지금은 음악을 재생할 때 선택되는 체크 박스와 선택하지 않을 때 음악을 끄는 체크 박스가 있습니다.메뉴 안의 체크 박스
메뉴에 체크 박스를 삽입하여 앱을 시작할 때 확인해야합니다. 하지만 선택을 취소하려고하면 앱이 종료됩니다 ...
누구든지 게시자가 있습니까? 분명한 오류를 보시겠습니까? 아니면 팁을주고 싶습니까?
MainActivity
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
//Switch-sats i syfte om att det kommer tillkomma fler alternativ
//Switchen bygger på att hämta rätt id ifrån användarens val
switch (item.getItemId())
{
case R.id.action_help:
//Bytar Activity till help
Intent intent = new Intent(MainActivity1.this, help.class);
startActivity(intent);
return true;
case R.id.music:
final CheckBox music = (CheckBox)findViewById(R.id.music);
music.setChecked(true);
music.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if (((CheckBox) v).isChecked()) {
backsound = MediaPlayer.create(MainActivity1.this, R.raw.backsound);
backsound.start();
backsound.setLooping(true);
}else{
music.setChecked(false);
backsound.stop();
}
}});
default:
return super.onOptionsItemSelected(item);
}}}
Main_activity.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
<item
android:id="@+id/action_help"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/help"/>
<item
android:id="@+id/music"
android:title="@string/musik"
android:checkable="true"
android:checked="true" />
http://stackoverflow.com/questions/8148746/ android-action-bar-checkable-menu-item-does-not-work-show- 제대로 표시/8493609 # 8493609 – Naddy