1.掌握Android中菜单的创建。
2.掌握Intent信使组件。
我们模仿微信菜单栏学习,创建一个于微信菜单栏相似的菜单
那么我们应该如何创建呢?
首先我们在Android Studio中找到res文件夹,新建一个Directory.
通过窗口预览,我们已经初步得到了我们需要的结果。
将我们初步完成的菜单栏嵌入我们的主界面MainAcitivity中。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu,menu);
return super.onCreateOptionsMenu(menu);
}
有了简单的菜单还不足够,我们需要继续完善点击菜单的响应功能,让用户知道他的点击得到回应。
设置点击事件点击响应我们需要用到Toast.makeText方法
@Override
public 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;
}
这样一来,用户就能够知道点击得到回应。
到目前为止,我们只是完成了发送数据的步骤和接受数据的准备,我们尝试运行一下页面。
我们尝试点击返回数据,无任何结果。说明我们的功能还未完善,只完成了部分。此时我们要运用到if函数,以及setResult(RESULT_OK,intent);这一条指令。这是我们接受数据的关键,当我们得到Result_ok时,我们成功返回数据。
在MainActivity中添加相对应的方法:
@Override
protected 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开发的学习未完待续
作者:genijmni