zoukankan      html  css  js  c++  java
  • Toolbar标题栏

    <android.support.v7.widget.Toolbar
        android:id="@+id/tool_bar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/colorPrimary"></android.support.v7.widget.Toolbar>

    第一种:将actionbar替换为toolbar

    /**
     * 1.在布局文件中添加ToolBar控件
     * 2.在styles.xml文件中隐藏ActionBar
     * 3.在Activity中查找ToolBar,并给Toolbar设置属性,最后,用ToolBar代替ActionBar
     */
    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.tool_bar);
            //设置标题
            toolbar.setTitle("Title");
            //设置二级标题
            toolbar.setSubtitle("二级标题");
            //设置导航图标
    //        toolbar.setNavigationIcon(R.drawable.abg);
    //        toolbar.setLogo(R.drawable.abg);
            //将ToolBar当作ActionBar来使用
            setSupportActionBar(toolbar);
            //显示导航按钮,这行代码一定要放在setSupportActionBar(toolbar);之后执行
            getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        }
    
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            switch (item.getItemId()) {
                case android.R.id.home:
                    Toast.makeText(MainActivity.this, "home", Toast.LENGTH_SHORT).show();
                    break;
            }
            return super.onOptionsItemSelected(item);
        }
    }

    2.将toolbar当作普通控件使用

    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.tool_bar);
            toolbar.setTitle("Title");
            toolbar.setSubtitle("SubTitle");
            //加载菜单文件到ToolBar上
            toolbar.inflateMenu(R.menu.main);
            //设置菜单项的点击事件
            toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    switch (item.getItemId()) {
                        case R.id.menu1:
                            Toast.makeText(MainActivity.this, "menu1", Toast.LENGTH_SHORT).show();
                            break;
                    }
                    return true;
                }
            });
        }
    }

    三.分享和搜索

    <menu xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:app="http://schemas.android.com/apk/res-auto">
        <item
            android:id="@+id/share"
            android:title="share"
            app:actionProviderClass="android.support.v7.widget.ShareActionProvider"
            app:showAsAction="always"/>
        <item
            android:id="@+id/search"
            android:title="search"
            app:showAsAction="always"
            app:actionViewClass="android.support.v7.widget.SearchView"/>
    </menu>
    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.tool_bar);
            setSupportActionBar(toolbar);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.menu, menu);
            /**************************处理分享控件**************************/
            //获得分享item
            MenuItem shareItem = menu.findItem(R.id.share);
            //获得ShareActionProvider
            ShareActionProvider shareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem);
            //设置要分享的数据
            shareActionProvider.setShareIntent(getShareIntent());
            /*******************************处理搜索控件*************************************/
            SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
            searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                //提交搜索 文本时触发
                @Override
                public boolean onQueryTextSubmit(String query) {
                    Log.d("lenve", "onQueryTextSubmit: " + query);
                    return true;
                }
    
                //搜索文本改变时触发
                @Override
                public boolean onQueryTextChange(String newText) {
                    Log.d("lenve", "onQueryTextChange: " + newText);
                    return true;
                }
            });
            return super.onCreateOptionsMenu(menu);
        }
    
        private Intent getShareIntent() {
            Intent intent = new Intent();
            //设置要分享的数据
            intent.putExtra(Intent.EXTRA_STREAM, Uri.parse(Environment
                    .getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
                    .getAbsolutePath() + File.separator + "p2.png"));
            //设置数据类型
            intent.setType("image/*");
            return intent;
        }
    }

     

  • 相关阅读:
    playbook的复用
    playbook 任务标签
    playbook handlers 触发器
    playbook循环语句
    playbook条件语句
    Ansible变量
    每日总结4.13
    每日总结4.12
    每日总结4.9
    每日总结4.8
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/5433877.html
Copyright © 2011-2022 走看看