0
点赞
收藏
分享

微信扫一扫

第二章:Android组件讲解-5

自由的美人鱼 2022-03-12 阅读 90

菜单


菜单是UI设计中经常使用的组件,提供了不同功能分组展示的能力,在人机交互中提供了人性化的操作。
Android中菜单分为两种类型:
选项菜单(Option Menu)
上下文菜单(Context Menu) 

 


选项菜单

创建选项菜单的3个步骤:
重写Activity的onCreateOptionsMenu()方法,当第一次打开菜单时该方法被自动调用。
调用Menu的add()方法添加菜单项(MenuItem)
当菜单项被选择时,重写Activity的onOptionsItemSelected()方法来响应事件。 

 


上下文菜单

上下文菜单的创建步骤:
覆盖Activity的onCreateContextMenu()方法,调用Menu的add()方法添加菜单项(MenuItem)。
覆盖onContextItemSelected()方法,响应菜单单击事件。
在Activity的onCreate()方法中,调用registerForContextMenu()方法,为视图注册上下文菜单。
长按控件

 



弹出式菜单(popupMenu)

弹出式菜单的创建步骤:
在res下创建menu文件夹,创建pop_menu.xml。
创建new PopupMenu(context,btn)。
调用getMenuInflater.inflater(R.menu.pop_menu,pop.getMenu())。
调用popmenu.show()

在res下穿件menu文件夹,
创建pop_menu.xml

 

 

 

 

ActionBar

一、显示和隐藏
(1)获取ActionBar  
                      ActionBar actionBar = getSupportActionBar();
(2)判断是否显示  
                      actionBar.isShowing()
(3)隐藏  
                       actionBar.hide();
(4)显示  
                      actionBar.show();

二、添加图标

1.always:总是显示在界面上
2.never:不显示在界面上,只让出现在右边的三个点中
3.ifRoom:如果有位置才显示,不然就出现在右边的三个点中

(1)res/menu创建menu_action.xml

 

(2)重写onCreateOptionsMenu

(3)重写onOptionsItemSelected

 

三、添加返回键

(1)onCreate方法添加  
                       actionBar.setDisplayHomeAsUpEnabled(true);
(2)onOptionsItemSelected添加case

                       case android.R.id.home:
                              finish();

RecyclerView

1、添加依赖
        implementation 'androidx.recyclerview:recyclerview:1.1.0'
2、初始化数据

       for (int i= 0;i<20;i++){
            list.add("标题"+i);
        }

3、获取组建
       
recycleview = findViewById(R.id.recycleview);

4、设置方向

        //第一个参数:Context 
        //第二个参数:方向 RecyclerView.HORIZONTAL || VERTICAL
        //第三个参数:是否倒叙false

 LinearLayoutManager manager = 
                              new LinearLayoutManager
                                           (RecyclerActivity.this,RecyclerView.HORIZONTAL,false);
 
recycleview.setLayoutManager(manager);


5、新建一个类MyRecyclerAdapter

          在类里创建静态方法MyViewHolder 继承 RecyclerView.ViewHolder

 

6、MyRecyclerAdapter 继承
 
               RecyclerView.Adapter<MyRecyclerAdapter.MyViewHolder>

 

7、创建构造方法

 

8、实现里边的方法

              public MyViewHolder onCreateViewHolder

9、实现里边的方法

      MyViewHolder 获取组建

 

10、实现里边的方法

      public void onBindViewHolder

 

      public int getItemCount

11、Activity里创建MyRecyclerAdapter,并设置

MyRecyclerAdapter adapter = new MyRecyclerAdapter(this,list);
recycleview.setAdapter(adapter);

      
12、MyRecyclerAdapter 创建接口 OnMyChildClick
                                        并且声明
                                        并且提供设置接口的方法      

 

13、RecyclerActivity的页面实现接口OnMyChildClick,重写里边的方法      

 

 


14、RecyclerActivity的页面设置完适配器,设置OnMyChildClick      


 
15、MyRecyclerAdapter 

                  onAttachedToRecyclerView 方法
                   获取到recyclerView


     
16、MyRecyclerAdapter 
          public MyViewHolder onCreateViewHolder 方法
          获取到view后设置点击事件


     

 

 

举报

相关推荐

0 条评论