记录Android开发学习

记录Android开发学习,第1张

概述记录Android开发学习Menu菜单学习创建菜单Menu创建主界面MainActivity设置点击事件发送数据接受数据Menu菜单学习1.掌握Android中菜单的创建。2.掌握Intent信使组件。创建菜单Menu我们模仿微信菜单栏学习,创建一个于微信菜单栏相似的菜单那么我们应该如何创建呢?首先

记录AndroID开发学习Menu菜单学习创建菜单Menu创建主界面MainActivity设置点击事件发送数据接受数据

Menu菜单学习

1.掌握AndroID中菜单的创建。
2.掌握Intent信使组件。

创建菜单Menu

我们模仿微信菜单栏学习,创建一个于微信菜单栏相似的菜单


那么我们应该如何创建呢?
首先我们在AndroID Studio中找到res文件夹,新建一个Directory.


其次我们需要在d出的对话框对这个Directory进行命名。


然后在res就会得到一个新的文件夹menu


menu文件夹右键新建一个Menu Resource file


Menu Resource file进行设定

随后在Menu文件夹下面找到对应的menu.xml,进行代码的编写:

<item    androID:title="发起群聊"    androID:ID="@+ID/IEtmGroup" /><item    androID:title="添加朋友"    androID:ID="@+ID/IEtmAddfrIEnd" /><item    androID:title="扫一扫"    androID:ID="@+ID/IEtmScan" /><item    androID:title="收付款"    androID:ID="@+ID/IEtmMoney" /><item    androID:title="帮助与反馈"    androID:ID="@+ID/IEtmHelp" />

通过窗口预览,我们已经初步得到了我们需要的结果。

创建主界面MainActivity

将我们初步完成的菜单栏嵌入我们的主界面MainAcitivity中。

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

有了简单的菜单还不足够,我们需要继续完善点击菜单的响应功能,让用户知道他的点击得到回应。

设置点击事件

点击响应我们需要用到Toast.makeText方法

@OverrIDepublic boolean onoptionsItemSelected( MenuItem item) {    switch(item.getItemID()){        case R.ID.IEtmGroup:            Toast.makeText (MainActivity.this,"你点击了发起群聊",Toast.LENGTH_LONG).show();            break;        case R.ID.IEtmAddfrIEnd:            Toast.makeText (MainActivity.this,"你点击了添加朋友",Toast.LENGTH_LONG).show();            break;        case R.ID.IEtmScan:            Toast.makeText (MainActivity.this,"你点击了扫一扫",Toast.LENGTH_LONG).show();            break;        case R.ID.IEtmMoney:            Toast.makeText (MainActivity.this,"你点击了收付款",Toast.LENGTH_LONG).show();            break;        case R.ID.IEtmHelp:            Toast.makeText (MainActivity.this,"你点击了帮助与反馈",Toast.LENGTH_LONG).show();            break;        default:    }    return true;    }

这样一来,用户就能够知道点击得到回应。


接下来我们丰富两个功能,点击发起群聊跳转需要实现的效果为当点击发起群聊可以将数据“hello 我发起群聊了”发送给目标活动GroupChartActivity,目标活动接收数据并用Toast打印出来。点击添加朋友开启目标活动AddFrIEndsActivity,目标活动返回数据“hello 我是你的朋友teacher tony”给MainActivity,MainActivity接收数据并用Toast打印出来。

发送数据

我们先创建GroupChartActivity,为后续功能开发做准备。我们可以使用startActivity() 方法开启活动发送数据。
在MainActivity中发起群聊里添加startActivity()方法,如下:

case R.ID.IEtmGroup:    Intent intent = new Intent(MainActivity.this,GroupChartActivity.class);    intent.putExtra("sendData","hello 我发起群聊了");    startActivity(intent);    Toast.makeText (MainActivity.this,"你点击了发起群聊",Toast.LENGTH_LONG).show();    break;

在GroupCharactivity添加接受sendData,使用Intent组件进行关联响应,如下:

Intent intent=getIntent();String sendData= ((Intent) intent).getStringExtra("sendData");Toast.makeText(GroupChartActivity.this,sendData,Toast.LENGTH_LONG).show();

如此一来,我们就能进行我们的数据传送,点击发起群聊,我们跳转页面并且发送信息由Toast打印显示,如图:

接受数据

为了接受数据先创建AddFrIEndsActivity,为后续功能开发做准备。我们可以使用startActivityForResult() 方法开启活动发送数据。
在MainActivity中发起群聊里添加startActivityForResult()方法,如下:

case R.ID.IEtmAddfrIEnd:    Intent intent1=new Intent(MainActivity.this,AddFrIEndsActivity.class);    startActivityForResult(intent1,1);    Toast.makeText (MainActivity.this,"你点击了添加朋友",Toast.LENGTH_LONG).show();    break;

在AddFrIEndsActivity我们需要一个按钮进行数据的返回,如下:

   button button=findVIEwByID(R.ID.buttondata);    button.setonClickListener(new VIEw.OnClickListener()    {        @OverrIDe        public voID onClick(VIEw v) {            Intent intent =new Intent();            intent.putExtra("returnData","hello 我是你的朋友 teacher tony");            setResult(RESulT_OK,intent);            finish();        }    });}

按钮我们需要在AddFrIEndsActivit相对应的xml中进行设计

<button    androID:ID="@+ID/buttondata"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:layout_margintop="78dp"    androID:text="返回数据"    app:layout_constraintEnd_toEndOf="parent"    app:layout_constraintStart_toStartOf="parent"    app:layout_constrainttop_totopOf="parent" />

到目前为止,我们只是完成了发送数据的步骤和接受数据的准备,我们尝试运行一下页面。


我们尝试点击返回数据,无任何结果。说明我们的功能还未完善,只完成了部分。此时我们要运用到if函数,以及setResult(RESulT_OK,intent);这一条指令。这是我们接受数据的关键,当我们得到Result_ok时,我们成功返回数据。
在MainActivity中添加相对应的方法:

@OverrIDeprotected voID onActivityResult(int requestCode, int resultCode,Intent data) {    super.onActivityResult(requestCode, resultCode, data);    switch (requestCode) {        case 1: if (resultCode == RESulT_OK){                String returnData =data.getStringExtra("returnData");                Toast.makeText(MainActivity.this,returnData,Toast.LENGTH_LONG).show();                break;            }    }}

我们再尝试运行,点击返回数据按钮:


这一次,我们成功接收到了我们需要的数据:hello,我是你的朋友 teacher tony。
自此,我们这一次的AndroID 开发的学习到了结尾。本次学习我们初步认识了AndroID菜单的设定,菜单的响应,发送数据和接收数据
AndroID开发的学习未完待续

总结

以上是内存溢出为你收集整理的记录Android开发学习全部内容,希望文章能够帮你解决记录Android开发学习所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1062259.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存