android中toolbar的使用--导航(2)

注意导包
toolbar中的
搜索功能–support.v7包中提供的搜索
分享功能–support.v7包中提供的分享
添加功能–自己写子菜单

activityone.java

package com.hnkjwlxy.androidch01;

import android.content.Intent;
import android.os.Bundle;

import android.support.v4.view.MenuItemCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.SearchView;
import android.support.v7.widget.ShareActionProvider;
import android.support.v7.widget.Toolbar;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private Toolbar tb_mytoolbar;
    private Button btn_ok;
    private ListView lv_search;
    private String[] mstr={"aaa","bbb","ccc","张杰"};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_one);
        initView();
        this.setSupportActionBar(tb_mytoolbar);
        //显示toolbar
        lv_search.setAdapter(new ArrayAdapter<String>
                (this,android.R.layout.simple_list_item_1,mstr));
        //为listview添加过滤器监听,可以使用文本过滤器
        lv_search.setTextFilterEnabled(true);
    }
    private void initView() {
        tb_mytoolbar = (Toolbar) findViewById(R.id.tb_mytoolbar);
        btn_ok = (Button) findViewById(R.id.btn_ok);
        lv_search = (ListView) findViewById(R.id.lv_search);
        btn_ok.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_ok:
                Intent intent=new Intent(this,TwoActivity.class);
                startActivity(intent);
                break;
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        //加载菜单
        getMenuInflater().inflate(R.menu.menu,menu);
        MenuItem searchitem=menu.findItem(R.id.action_search);
        SearchView searchView=(SearchView) MenuItemCompat.getActionView(searchitem);
        searchView.setQueryHint("请输入要搜索的字符:");
        //设置搜索文本监听
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            //当点击搜索按钮提交时触发
            public boolean onQueryTextSubmit(String query) {
                return false;
            }
            //当搜索内容发生改变时触发
            @Override
            public boolean onQueryTextChange(String s) {
                if (!TextUtils.isEmpty(s)){
                    //TextUtils集成类的isEmpty方法
                    //如果搜索框不为空,启动listview控件的过滤,展示过滤后的数据
                    lv_search.setFilterText(s);
                 }
                 else{
                    //如果搜索框为空,清空文本过滤,展示所有数据
                    lv_search.clearTextFilter();
                }
                return false;
            }
        });

        MenuItem shareitem=menu.findItem(R.id.action_share);
        //得到分享的类
        ShareActionProvider shareActionProvider= (ShareActionProvider)MenuItemCompat.getActionProvider(shareitem);
        //通过意图进行分享
        Intent intent=new Intent();
        //设置意图的动作时发送信息
        intent.setAction(Intent.ACTION_SEND);
        //设置意图发送的数据
        intent.putExtra(intent.EXTRA_TEXT,"测试");
        //设置发送的数据类型是文本
        intent.setType("text/plain");
        //设置分享操作来实现发送
        shareActionProvider.setShareIntent(intent);
        return true;
    }
}

activitytwo.java

package com.hnkjwlxy.androidch01;

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.Button;

public class TwoActivity extends AppCompatActivity implements View.OnClickListener {
    private Toolbar tb_mtb;
    private Button btn_tothree;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_two);
        initView();

        //加进去
        setSupportActionBar(tb_mtb);

        ActionBar actionBar=getSupportActionBar();
        //设置APPbar的导航功能
        actionBar.setDisplayHomeAsUpEnabled(true);
    }

    private void initView() {
        tb_mtb = (Toolbar) findViewById(R.id.tb_mtb);
        btn_tothree = (Button) findViewById(R.id.btn_tothree);

        btn_tothree.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_tothree:
                Intent intent=new Intent(this,ThreeActivity.class);
                startActivity(intent);
                break;
        }
    }
}

activitythree.java

package com.hnkjwlxy.androidch01;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;

public class ThreeActivity extends AppCompatActivity {
    private Toolbar toolbar;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_three);
        initView();
        setSupportActionBar(toolbar);
        ActionBar actionBar=getSupportActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
    }

    private void initView() {
        toolbar = (Toolbar) findViewById(R.id.toolbar);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值