1. 액티비티는 베이직으로 생성한다.







2) 모듈을 추가해서 테스트. Basic Activity로 생성한다.



3) Menu 폴더에 있는 menu_main.xml을 편집한다.




drawable 폴더에 아이콘으로 사용할 이미지를 넣고 item에서 icon에 해당 이미지들을 연결해준다.

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.progdv.actionbar_items.MainActivity">


<item
android:id="@+id/alarm"
android:title="alarm"
android:icon="@android:drawable/ic_lock_idle_alarm"
app:showAsAction="always"/>

<item
android:id="@+id/new_game"
android:title="New Game"
android:icon="@drawable/new_game"
app:showAsAction="always"/>

<item
android:id="@+id/play"
android:title="play"
android:icon="@drawable/play"
app:showAsAction="always"/>


<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"
app:showAsAction="never" />
</menu>


4) 화면 상단 액션바에 아이콘이 추가된 것을 확인할 수 있다.






5) Main_activity에 액션을 넣어준다.


package com.progdv.actionbar_items;

import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId(); // 현재 클릭된 객체의 아이디를 얻어와서
// 이하에서 처리

switch(id) {
case R.id.alarm:
Toast.makeText(getApplicationContext(), "Android Alarm", Toast.LENGTH_SHORT).show();
return true;

case R.id.new_game;
Toast.makeText(getApplicationContext(), "New Game", Toast.LENGTH_SHORT).show();
return true;
case R.id.play;
Toast.makeText(getApplicationContext(), "Play", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_settings;
Toast.makeText(getApplicationContext(), "Setting", Toast.LENGTH_SHORT).show();
return true;
// setting 하위 메뉴
case R.id.hg:
Toast.makeText(getApplicationContext(), "Hard", Toast.LENGTH_SHORT).show();
return true;
case R.id.ng:
Toast.makeText(getApplicationContext(), "Normal", Toast.LENGTH_SHORT).show();
return true;
case R.id.eg:
Toast.makeText(getApplicationContext(), "Easy", Toast.LENGTH_SHORT).show();
return true;

default:
return super.onOptionsItemSelected(item);
}

}
}






'안드로이드' 카테고리의 다른 글

대화상자 (Dialog): AlertDialog  (0) 2016.04.28
컨텍스트 메뉴 (contextmenu)  (0) 2016.04.28
Toast: 랜덤 숫자 맞추기 게임  (0) 2016.04.26
이벤트 처리: Toast 이벤트 기초  (0) 2016.04.26
그리드 뷰 (GridView)  (0) 2016.04.26
Posted by netyhobby
,