Second

Menu菜单

方法较多,需要记忆

系统菜单

效果:

系统弹出菜单效果1
系统弹出菜单效果2
注意:这并不是某些软件的+号,不能与之混淆
一个Activity只有一个系统菜单

代码:

<item android:id="@+id/blue" android:title="蓝色" app:showAsAction="never"></item>
    <item android:id="@+id/red" android:title="红色"></item>

在res下创建menu文件夹并新建xml文件
每个item都要加入id
showAsAction------菜单项在按钮上的显示方式

alaways:菜单项一直显示在ActionBar上

ifRoom:如果有足够的空间,菜单会显示在ActionBar上

never:菜单永远不会出现在ActionBar上

.withText:菜单图标,菜单文本一起显示

(个人借用,如有侵权,请速告,立删)

 @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu,menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id=item.getItemId();
        switch (id){
            case R.id.blue:
                Toast.makeText(MainActivity.this,"蓝色",Toast.LENGTH_SHORT).show();
                break;
            case R.id.red:
                Toast.makeText(MainActivity.this,"红色",Toast.LENGTH_SHORT).show();
                break;
        }
        return super.onOptionsItemSelected(item);
    }

onCreateOptionsMenu----在activity中重写,加载xml文件
直接调用getMenuInflater().inflate(R.menu.menu,menu) 方法 参数为: xml文件和menu

onOptionsItemSelected----在activity中重写,设置事件监听

上下文菜单

效果:

上下文菜单效果
触发需要长按

代码:

 registerForContextMenu(text);//绑定相应的控件,在oncreate中



@Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
        getMenuInflater().inflate(R.menu.menu,menu);
        super.onCreateContextMenu(menu, v, menuInfo);
    }

    @Override
    public boolean onContextItemSelected(MenuItem item) {
        int id=item.getItemId();
        switch (id){
            case R.id.blue:
                Toast.makeText(MainActivity.this,"蓝色",Toast.LENGTH_SHORT).show();
                break;
            case R.id.red:
                Toast.makeText(MainActivity.this,"红色",Toast.LENGTH_SHORT).show();
                break;
        }
        return super.onContextItemSelected(item);
    }

onCreateContextMenu----在activity中重写,加载xml文件

onContextItemSelected----在activity中重写,设置事件监听

弹出菜单

效果:弹出菜单效果

默认弹出的位置在控件view的下方

代码:

 PopupMenu popupMenu=new PopupMenu(MainActivity.this,text);
                popupMenu.inflate(R.menu.menu);
                popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
                    @Override
                    public boolean onMenuItemClick(MenuItem item) {
                        int id=item.getItemId();
                        switch (id){
                            case R.id.blue:
                                Toast.makeText(MainActivity.this,"蓝色",Toast.LENGTH_SHORT).show();
                                break;
                            case R.id.red:
                                Toast.makeText(MainActivity.this,"红色",Toast.LENGTH_SHORT).show();
                                break;
                        }
                        return false;
                    }
                });
                popupMenu.show();

在点击监听中写入
实例化PopupMenu 生成对象
构造函数参数: 上下文, 指定的控件
inflate-----设置布局
setOnMenuItemClickListener-----设置监听
最后要调用该对象的show 方法
内容不多,但是却是较为实用的基础,虽然现在流行的app不使用…但是第三天的课程却与此类似,需用心学习第三日课程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园建设方案旨在通过融合先进技术,如物联网、大数据、人工智能等,实现校园的智能化管理与服务。政策的推动和技术的成熟为智慧校园的发展提供了基础。该方案强调了数据的重要性,提出通过数据的整合、开放和共享,构建产学研资用联动的服务体系,以促进校园的精细化治理。 智慧校园的核心建设任务包括数据标准体系和应用标准体系的建设,以及信息化安全与等级保护的实施。方案提出了一站式服务大厅和移动校园的概念,通过整合校内外资源,实现资源共享平台和产教融合就业平台的建设。此外,校园大脑的构建是实现智慧校园的关键,它涉及到数据中心化、数据资产化和数据业务化,以数据驱动业务自动化和智能化。 技术应用方面,方案提出了物联网平台、5G网络、人工智能平台等新技术的融合应用,以打造多场景融合的智慧校园大脑。这包括智慧教室、智慧实验室、智慧图书馆、智慧党建等多领域的智能化应用,旨在提升教学、科研、管理和服务的效率和质量。 在实施层面,智慧校园建设需要统筹规划和分步实施,确保项目的可行性和有效性。方案提出了主题梳理、场景梳理和数据梳理的方法,以及现有技术支持和项目分级的考虑,以指导智慧校园的建设。 最后,智慧校园建设的成功依赖于开放、协同和融合的组织建设。通过战略咨询、分步实施、生态建设和短板补充,可以构建符合学校特色的生态链,实现智慧校园的长远发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值