菜单的利用以及侧拉栏的使用
来源:互联网 发布:汽配软件 编辑:程序博客网 时间:2024/06/16 16:02
在布局文件中DrawerLayout布局中第一个布局或控件为主界面,第二个布局或控件为侧拉界面,注意侧拉界面要加android:layout_gravity="start"即在左边,不加无效果。
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.Toolbar android:id="@+id/toolBar" android:layout_width="match_parent" android:layout_height="50dp" android:elevation="4dp" android:background="?attr/colorPrimary" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="主界面" /> </LinearLayout> <LinearLayout android:orientation="vertical" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="start" android:background="#EFEFEF"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="侧拉界面"/> </LinearLayout> </android.support.v4.widget.DrawerLayout></LinearLayout>
MainActivity.class:
import android.os.Bundle;import android.support.v4.view.GravityCompat;import android.support.v4.widget.DrawerLayout;import android.support.v7.app.ActionBar;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.Menu;import android.view.MenuItem;import android.widget.Toast;public class MainActivity extends AppCompatActivity { DrawerLayout drawerLayout; @Override protected void onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); Toolbar toolBar=(Toolbar)findViewById(R.id.toolBar); setSupportActionBar(toolBar); //将ActionBar换位Toolbar,具体可看之前的关于Toolbar的博文,将style中的APPThem改成NoActionBar ActionBar actionBar=getSupportActionBar(); if(actionBar!=null){ actionBar.setDisplayHomeAsUpEnabled(true); //Toolbar最左边的按钮即为HomeAsUp actionBar.setHomeAsUpIndicator(R.drawable.ico); } drawerLayout=(DrawerLayout)findViewById(R.id.drawer_layout); } //获取菜单按钮 @Override public boolean onCreateOptionsMenu(Menu menu){ getMenuInflater().inflate(R.menu.toobar,menu); return true; } //菜单按钮点击事件 @Override public boolean onOptionsItemSelected(MenuItem item){ switch(item.getItemId()){ case android.R.id.home://Toolbar的最左边的按钮 drawerLayout.openDrawer(GravityCompat.START);//打开侧拉栏 break; case R.id.ico://Toolbar在menu菜单中添加的按钮 Toast.makeText(this,"Hello",Toast.LENGTH_SHORT).show(); break; } return true; }}
在res中新建menu文件夹,新建toolbar.xml文件:
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/ico" android:icon="@drawable/ico" android:title="ico" app:showAsAction="always"/></menu>
阅读全文
0 0
- 菜单的利用以及侧拉栏的使用
- Android 菜单以及提示框的使用
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- 测滑菜单MenuDrawer的使用以及解析
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- 测滑菜单MenuDrawer的使用以及解析
- 使用JPopupMenu作为提示以及创建带图像的菜单
- iOS UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- UIMenuController的使用,对UILabel拷贝以及定制菜单
- 第三篇:menu菜单的创建以及使用
- 菜单,菜单条,菜单项的使用
- 兼容emojo表情
- Battleships in a Board问题及解法
- 虚拟机类加载机制
- python处理要素类与excel关联的数据
- 全栈工程师
- 菜单的利用以及侧拉栏的使用
- LeetCode(八)415. Add Strings
- 交互式QGraphicsView(平移/缩放/旋转)
- 命令模式
- RXAndroid2.0初学习二
- [java]35个java性能优化总结
- 分别实现数字时钟和日历的js代码
- POJ1741-树的分治&树的重心&树上的路径问题-Tree
- thinkphp redis保存token