Android 안드로이드2017. 3. 28. 22:51

옵션메뉴를 보통 이렇게 구성한다.


기존에는 기만들어 놓은 소스를 꺼내와 압축을 풀고 해당 액티비티에서 아래 소스를 찾아 지금 진행 중인 프로젝트에 붙여넣기 했다. 


다양한 앱 제작을 진행하면서 그 형식이 대부분 바뀜없이 여기서 시작한다. 앞으로 예전 소스보다는 바로 아래에서 그대러 긁어 가져가서 진행 속도를 높이려고 한다.

@Override
public boolean onCreateOptionsMenu(Menu menu) {
if(IsDebugging) Log.d(TAG, "onCreateOptionsMenu()");
return true;
}

PackageInfo getPackageInfo() {
PackageInfo pinfo = null;
try {
pinfo = getPackageManager().getPackageInfo(getPackageName(), 0);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return pinfo;
}

public boolean onPrepareOptionsMenu(Menu menu) {
if(IsDebugging) Log.d(TAG, "onPrepareOptionsMenu()");

menu.clear();
PackageInfo pinfo = getPackageInfo();
int versionCode = pinfo.versionCode;
String versionName = pinfo.versionName;

Resources res = getResources();
String text = String.format(
res.getString(R.string.about), versionName,
50 - versionCode >= 0 ? 50 - versionCode : versionCode - 50);

menu.add(0, Menu.FIRST , 0, text);
menu.add(0, Menu.FIRST +1, 0, "mIsBackButton=" +mIsBackButton);
return super.onPrepareOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(IsDebugging) Log.d(TAG, "onOptionsItemSelected()");
switch (item.getItemId()) {
case Menu.FIRST:
return true;
case Menu.FIRST + 1:
mIsBackButton = !mIsBackButton;
if(IsDebugging) Log.d(TAG, "mIsBackButton = " +mIsBackButton);
if(IsDebugging) Toast.makeText(this, "mIsBackButton = " +mIsBackButton, Toast.LENGTH_SHORT).show();
invalidateOptionsMenu();
return true;
}
return super.onOptionsItemSelected(item);
}



Posted by 코드버무려