DrawerLayout和actionBar实现网易新闻标题,包含点击图标登录qq
来源:互联网 发布:淘宝达人开通 编辑:程序博客网 时间:2024/06/06 18:00
DrawerLayout和antionBar实现网易新闻标题,包含点击图标登录qq
1.首先在res下建一个文件夹menu,写一个xml 这里就叫actionbar
<?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/image_actionbar" android:icon="@drawable/qqhuise" android:title="发布" app:showAsAction="always" /> <item android:id="@+id/action_tianqi" android:orderInCategory="100" android:showAsAction="never" android:title="天气" /> <item android:id="@+id/action_lixian" android:orderInCategory="100" android:showAsAction="never" android:title="离线" /> <item android:id="@+id/action_yejian" android:orderInCategory="100" android:showAsAction="never" android:title="日夜间" /> <item android:id="@+id/action_sousuo" android:orderInCategory="100" android:showAsAction="never" android:title="搜索" /> <item android:id="@+id/action_saoyisao" android:orderInCategory="100" android:showAsAction="never" android:title="扫一扫" /> <item android:id="@+id/action_shezhi" android:orderInCategory="100" android:showAsAction="never" android:title="设置" /></menu>
注意id
2.在你的MainActivity里
这个方法是关于左拉又拉菜单相关设置
@Overridepublic boolean onOptionsItemSelected(MenuItem item) { if (toggle.onOptionsItemSelected(item)) { return true; } switch(item.getItemId()){ case R.id.image_actionbar: if (mActivityMain.isDrawerOpen(GravityCompat.START)) { mActivityMain.closeDrawer(GravityCompat.START);//关闭抽屉 } else { mActivityMain.openDrawer(GravityCompat.END); } break; default: break; } if (mActivityMain.isDrawerOpen(GravityCompat.END)) { mActivityMain.closeDrawer(GravityCompat.END);//关闭抽屉 return super.onOptionsItemSelected(item); } return toggle.onOptionsItemSelected(item) | super.onOptionsItemSelected(item);}//这个方法是调用你的menu
@Overridepublic boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.actionbar, menu);//这里是调用menu文件夹中的main.xml,在登陆界面label右上角的三角里显示其他功能 return super.onCreateOptionsMenu(menu);}//以上基本知识点就完了 如果要实现一个简单的结果 可以粘我的 还有ActionBar的联动
private void initActionBar() { ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); toggle = new ActionBarDrawerToggle(this, mActivityMain, R.string.open, R.string.close); toggle.syncState(); mActivityMain.addDrawerListener(toggle);}
//全代码和Xml
<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.administrator.drawerlayoutactiobar.MainActivity"> <fragment class="com.example.administrator.drawerlayoutactiobar.leftFragment" android:layout_gravity="start" android:layout_width="match_parent" android:layout_height="match_parent"/> <fragment class="com.example.administrator.drawerlayoutactiobar.rightFragment" android:layout_gravity="end" android:layout_width="match_parent" android:layout_height="match_parent"/></android.support.v4.widget.DrawerLayout>
/**********/ 自己建俩个fragment就可以了
public class MainActivity extends AppCompatActivity { private DrawerLayout mActivityMain; private ActionBarDrawerToggle toggle; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initActionBar(); } private void initActionBar() { ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); toggle = new ActionBarDrawerToggle(this, mActivityMain, R.string.open, R.string.close); toggle.syncState(); mActivityMain.addDrawerListener(toggle); } private void initView() { mActivityMain = (DrawerLayout) findViewById(R.id.activity_main); } @Override public boolean onOptionsItemSelected(MenuItem item) { if (toggle.onOptionsItemSelected(item)) { return true; } switch (item.getItemId()) { case R.id.image_actionbar: if (mActivityMain.isDrawerOpen(GravityCompat.START)) { mActivityMain.closeDrawer(GravityCompat.START);//关闭抽屉 } else { mActivityMain.openDrawer(GravityCompat.END); } break; default: break; } if (mActivityMain.isDrawerOpen(GravityCompat.END)) { mActivityMain.closeDrawer(GravityCompat.END);//关闭抽屉 return super.onOptionsItemSelected(item); } return toggle.onOptionsItemSelected(item) | super.onOptionsItemSelected(item); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.actionbar, menu);//这里是调用menu文件夹中的main.xml,在登陆界面label右上角的三角里显示其他功能 return super.onCreateOptionsMenu(menu); }}
阅读全文
0 0
- DrawerLayout和actionBar实现网易新闻标题,包含点击图标登录qq
- ActionBar+DrawerLayout实现网易新闻客户端首页
- 点击actionbar左侧图标,实现返回效果
- DrawerLayout和ActionBar实现侧滑菜单和Tab页
- ActionBar 顶栏 右边实现自定义图标点击效果
- DrawerLayout抽屉和ActionBar结合
- flash实现点击QQ图标显示QQ对话框
- 仿QQ侧滑菜单,HorizontalScrollView和DrawerLayout实现对比
- Android DrawerLayout和Navigationview实现类似于QQ的侧面导航
- QQ侧滑菜单的实现和拓展-DrawerLayout
- 【Android界面实现】使用ActionBar和DrawerLayout纯原生控件,实现侧滑栏和滑动Tab界面
- ActionBar、Drawerlayout、ActionBarDrawerToggle实现抽屉效果
- DrawerLayout实现侧滑仿QQ界面
- DrawerLayout,NavigationView 和 ActionBar的使用
- actionBar和DrawerLayout的使用(抽屉布局)
- ActionBar和DrawerLayout纯原生控件,实现侧滑栏和滑动Tab界面
- 使用ActionBar和DrawerLayout纯原生控件,实现侧滑栏和滑动Tab界面
- DrawerLayout实现网易新闻抽屉效果
- MySQL——Schema与数据类型优化(一)
- 集训8.11
- windows batch脚本中嵌入python程序
- 算法十五
- 自定义View
- DrawerLayout和actionBar实现网易新闻标题,包含点击图标登录qq
- 面试题-java泛型擦除
- 方法重写
- Unity3D之测试函数运行时间
- 个人博客开发流程
- Unity旋转以及万向锁问题
- 阿学的推荐---wifite
- SpringBoot踩过的坑
- ?378. Kth Smallest Element in a Sorted Matrix(Java)