1. Trang chủ
  2. » Công Nghệ Thông Tin

Hướng dẫn lập trình Android bài 12

12 191 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 58,77 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Option menu và action bargửi phản hồi, thông tin ứng dụng.... Option menu và action bar1.. Tạo option menu bằng xml... Option menu và action bar Để hiển thị menu phải ghi đè phương thức

Trang 1

Bài 12: Menu

Trang 2

Nội dung bài học

Trang 3

Option menu và action bar

gửi phản hồi, thông tin ứng dụng

Menu button.

của màn hình.

Trang 4

Option menu và action bar

1 Tạo option menu bằng xml

<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.vietpro.baihocthu12.MainActivity" > 

<item

android:id="@+id/action_settings"

android:icon="@drawable/ic_launcher"

android:showAsAction="always"

android:title="Settings"/>

<item

android:id="@+id/action_about"

android:showAsAction="always"

android:title="About"/>

<item

android:id="@+id/action_help"

android:showAsAction="always"

android:title="Help"/>

<item

android:id="@+id/action_search"

android:showAsAction="always"

android:title="Search"/> 

</menu>

Trang 5

Option menu và action bar

 Để hiển thị menu phải ghi đè phương thức sau trong file MainActivity

@Override

} public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

 Xử lý sự kiện click vào từng item trong menu

@Override

public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();

switch (id) {

case R.id.action_about:

Toast.makeText(MainActivity.this, "About", Toast.LENGTH_SHORT).show();

break;

case R.id.action_help:

Toast.makeText(MainActivity.this, "Help", Toast.LENGTH_SHORT).show();

break;

default:

break;

}

return super.onOptionsItemSelected(item);

}

Trang 6

Option menu và action bar

 Tạo submenu:

<item

android:id="@+id/action_search"

android:showAsAction="always"

android:title="Search">

<menu>

<item

android:id="@+id/action_search_by_name"

android:showAsAction="always"

android:title="Search by name"/>

<item

android:id="@+id/action_search_by_size"

android:showAsAction="always"

android:title="Search by size"/>

</menu>

</item>

Trang 7

Option menu và action bar

2 Tạo option menu bằng code

@Override

public boolean onCreateOptionsMenu(Menu menu) {

//Đối số 1 là nhóm

//Đối số 2 là Id cho Menu Item

//Đối số 3 là thứ tự xuất hiện của Menu Item

//Đối số 4 là tiêu đề cho Menu Item

menu.add(Menu.NONE, ACTION_SETTINGS_ID, Menu.NONE, "Settings");

menu.add(Menu.NONE, ACTION_SEARCH_ID, Menu.NONE, "Search");

menu.add(Menu.NONE, ACTION_ABOUT_ID, Menu.NONE, "About");

menu.add(Menu.NONE, ACTION_HELP_ID, Menu.NONE, "Help");

return true;

}

Trang 8

Option menu và action bar

 Tạo submenu

@Override

public boolean onCreateOptionsMenu(Menu menu) {

//Đối số 1 là nhóm

//Đối số 2 là Id cho Menu Item

//Đối số 3 là thứ tự xuất hiện của Menu Item

//Đối số 4 là tiêu đề cho Menu Item

menu.add(Menu.NONE, ACTION_SETTINGS_ID, Menu.NONE, "Settings");

SubMenu subMenu = menu.addSubMenu(Menu.NONE, ACTION_SEARCH_ID, Menu.NONE, "Search");

subMenu.add(Menu.NONE, ACTION_SEARCH_BY_NAME_ID, Menu.NONE, "Search by name");

subMenu.add(Menu.NONE, ACTION_SEARCH_BY_SIZE_ID, Menu.NONE, "Search by size");

menu.add(Menu.NONE, ACTION_ABOUT_ID, Menu.NONE, "About");

menu.add(Menu.NONE, ACTION_HELP_ID, Menu.NONE, "Help");

return true;

}

Trang 9

Context menu

cung cấp các action cho người dùng làm 1 việc gì đó.

TextView tv = (TextView) findViewById(R.id.tv_hello);

registerForContextMenu(tv);

@Override

public void onCreateContextMenu(ContextMenu menu, View v,

ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo);

MenuInflater menuInflater = getMenuInflater();

menuInflater.inflate(R.menu.main, menu);

}

Trang 10

Context menu

- Xử lý sự kiện click vào mỗi item của menu

@Override

public boolean onContextItemSelected(MenuItem item) {

switch (item.getItemId()) {

case R.id.action_search:

Toast.makeText(MainActivity.this, "Search", Toast.LENGTH_SHORT).show();

break; 

default:

break;

}

return super.onContextItemSelected(item);

}

Trang 11

Popup menu

private void showPopupMenu(View v){

PopupMenu popupMenu = new PopupMenu(MainActivity.this, v);

MenuInflater menuInflater = getMenuInflater();

popupMenu.setOnMenuItemClickListener(new OnMenuItemClickListener() {

@Override

public boolean onMenuItemClick(MenuItem item) {

return false;

} });

menuInflater.inflate(R.menu.main, popupMenu.getMenu());

popupMenu.show();

}

Trang 12

Q&A

Ngày đăng: 12/09/2017, 01:00

TỪ KHÓA LIÊN QUAN

w