0
Q
操作栏更改效果
A
回答
1
看起来它是相对较新的能力,被称为Contextual action mode。
简而言之,它只是针对长选项目的特定“上下文”菜单。我认为上面的链接提供了足够的信息。然而,下面是关于如何使用它的一些简单的例子:
main.xml中:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:clipChildren="false"
android:id="@+id/root">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button"
android:text="Do Long Press"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:layout_marginTop="5dp" />
</RelativeLayout>
context_menu.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:icon="@android:drawable/ic_menu_close_clear_cancel"
android:title="close"
android:showAsAction="always"
android:id="@+id/close_menu" />
</menu>
MyActivity.java:
public class MyActivity extends Activity implements ActionMode.Callback {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViewById(R.id.button).setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(final View v) {
startActionMode(MyActivity.this);
return true;
}
});
}
@Override
public boolean onCreateActionMode(final ActionMode mode, final Menu menu) {
// Inflate a menu resource providing context menu items
MenuInflater inflater = mode.getMenuInflater();
inflater.inflate(R.menu.context_menu, menu);
return true;
}
@Override
public boolean onPrepareActionMode(final ActionMode mode, final Menu menu) {
// TODO: auto-generated block
return false;
}
@Override
public boolean onActionItemClicked(final ActionMode mode, final MenuItem item) {
switch (item.getItemId()) {
case R.id.close_menu:
mode.finish(); // Action picked, so close the CAB
return true;
default:
return false;
}
}
@Override
public void onDestroyActionMode(final ActionMode mode) {
// TODO: auto-generated block
}
}
它看起来像如下:
执行长按
请注意,V
产品默认之一,在context_menu.xml我只提供了X
项目。
相关问题
- 1. 从styles.xml更改操作栏属性没有效果
- 2. 更改操作栏图标
- 3. 更改操作栏图标
- 4. 更改android操作栏样式
- 5. 在操作栏中更改图像
- 6. 更改操作栏标题颜色
- 7. 更改操作栏菜单图标
- 8. Android Honeycomb - 更改操作栏样式
- 9. 更改操作栏微调主题
- 10. 操作栏和更改图标
- 11. 更改操作栏菜单颜色
- 12. 更改Android操作栏文本颜色
- 13. 更改操作栏的颜色
- 14. 更改操作栏的背景颜色
- 15. 更改操作栏选项卡高度
- 16. Actionbarsherlock - 更改操作栏线条颜色
- 17. 更改Android中的操作栏颜色
- 18. 更改操作栏上的图标
- 19. 更改支持操作栏的高度
- 20. Java android更改操作栏的颜色
- 21. 更改Android操作栏字幕颜色
- 22. 试图更改操作栏大小
- 23. 更改操作栏中的图标
- 24. Android:更改操作栏中的标签
- 25. 更改操作栏上TabView的颜色
- 26. Android:更改操作栏上的操作共享项的图标
- 27. 的Android操作栏:更改操作按钮的颜色
- 28. 如何更改回窄和更改操作栏中的颜色
- 29. 当您更改布局时Android更改操作栏菜单
- 30. 如何更改上下文操作栏的溢出图标而不更改其标准操作栏?
太棒了!我甚至不知道如何搜索这个组件......谢谢。 – Emerick