옵션메뉴를 보통 이렇게 구성한다.
기존에는 기만들어 놓은 소스를 꺼내와 압축을 풀고 해당 액티비티에서 아래 소스를 찾아 지금 진행 중인 프로젝트에 붙여넣기 했다.
다양한 앱 제작을 진행하면서 그 형식이 대부분 바뀜없이 여기서 시작한다. 앞으로 예전 소스보다는 바로 아래에서 그대러 긁어 가져가서 진행 속도를 높이려고 한다.
@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);
}
'Android 안드로이드' 카테고리의 다른 글
Error:Execution failed for task. No matching client found for package name (0) | 2017.09.01 |
---|---|
Firebase Cloud Message 푸시 노티피케이션 Push Notification (0) | 2017.04.20 |
웹뷰 WebViewClient 상속 (0) | 2016.11.08 |
configure your build for VectorDrawableCompat. (0) | 2016.10.29 |
안드로이드 API 23 레벨로 SDK 업데이트 후 (0) | 2015.09.23 |