Android 布局最佳实践 之 使用自己的 ToolBar
来源:互联网 发布:淘宝店铺分类怎么修改 编辑:程序博客网 时间:2024/06/07 03:45
源代码 传送门
效果图:
下面是 MainActivity.java
package com.nicerdata.mytoolbar;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.Menu;import android.view.MenuItem;import android.view.View;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.id_toolBar); assert toolbar != null; // toolbar.setLogo(R.mipmap.ic_launcher); // toolbar.setTitle("应用设置"); // toolbar.setSubtitle("Sub Title"); setSupportActionBar(toolbar); // noinspection ConstantConditions getSupportActionBar().setDisplayShowTitleEnabled(false); // toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_18dp); toolbar.setOnMenuItemClickListener(onMenuItemClick); } private Toolbar.OnMenuItemClickListener onMenuItemClick = new Toolbar.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { String msg = ""; switch (item.getItemId()) { case R.id.action_edit: msg += "Click edit"; break; case R.id.action_share: msg += "Click share"; break; case R.id.action_settings: msg += "Click setting"; break; } if (!msg.equals("")) { showToast(msg); } return true; } }; private void showToast(String msg) { Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT).show(); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); return true; } public void toSecond(View view) { startActivity(new Intent(this, SecondActivity.class)); }}
下面是 mytoolbar.xml,用于别的 layout 去 include
<?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:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <android.support.v7.widget.Toolbar android:id="@+id/id_toolBar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/HFColorPrimary" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <TextView android:id="@+id/id_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="这是标题" android:textColor="@color/white" android:textSize="16sp" /> </android.support.v7.widget.Toolbar></LinearLayout>
下面是另一个 Activiity.java
package com.nicerdata.mytoolbar;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.View;import android.widget.TextView;public class SecondActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); Toolbar toolbar = (Toolbar) findViewById(R.id.id_toolBar); TextView title = (TextView) findViewById(R.id.id_title); title.setText("用户反馈"); assert toolbar != null; setSupportActionBar(toolbar); //noinspection ConstantConditions getSupportActionBar().setDisplayShowTitleEnabled(false); toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_18dp); toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } }); }}
By 胡飞Android 实践笔记
.
0 0
- Android 布局最佳实践 之 使用自己的 ToolBar
- UITableViewCell使用自动布局的“最佳实践”
- Android之toolbar的使用
- Android之Toolbar的使用
- Android之ToolBar的使用
- Android之ToolBar使用
- android使用5.0的toolbar,自定义布局参考地址
- Android 5.0+可折叠toolbar布局(CollapsingToolbarLayout)的使用
- Android控件之Toolbar + DrawerLayout的使用
- 重温Android之Toolbar的使用
- 【Android - V】之Toolbar的使用
- Android组件之Toolbar的基本使用
- Android之5.x Toolbar的使用
- Android开发之ToolBar的使用
- 安卓最佳实践之布局优化
- Android最佳性能实践布局优化技巧
- Android最佳实践之UI
- 使用Android API最佳实践
- 使用opencv作物件识别(一) —— 积分直方图加速HOG特征计算
- 剑指offer(24):从上往下打印二叉树
- iis7.5 plist和json加载出错处理
- Ceph性能调优
- HTML5一些标签
- Android 布局最佳实践 之 使用自己的 ToolBar
- iOS学习笔记74-完整详解GCD系列(二)dispatch_after;dispatch_apply;dispatch_once
- linux大文件查找
- 关于iOS中的textView
- iOS学习笔记74- 完整详解GCD系列(三)dispatch_group
- Unable to load native-hadoop library for your platform...
- 安卓开发工具汇总,开发人员必备!
- lightoj1011 - Marriage Ceremonies【状压dp】
- [Java] 接口(Interface)与 抽象类 (Abstract)使用规则和区别