手机与电脑不同,手机的界面很小,一些比较重要但不足以占整页的提示信息如何显示尤为重要,Android 给出了一个工具Toast
Toast
主要用法:
Toast.makeText(FirstActivity.this, "you will go to SecondActivity", Toast.LENGTH_SHORT).show();
Toast.makeText()有三个参数,第一个参数是调用该提示框的类,第二个参数是提示的内容,第三个参数是提示信息的类型,主要有两种类型
Toast.LENGTH_SHORT //显示时间少一点
Toast.LENGTH_LONG //显示时间长一点
我们在第一节的TestProject中的按钮点击时间略做更改,使页面切换的时候显示一行字
you will go to secondActivity
代码如下
public void onClick(View v) {
Toast.makeText(FirstActivity.this, "you will go to SecondActivity", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
startActivity(intent);
}
});
我们点击第一个按钮转到第二个按钮的时候会显示一行小子,类似于提示框,这样就可以实现提示并且不占用屏幕的目的啦
显示提示信息
Menu
当我们一个页面需要有很多个按钮需要对应很多个操作的时候,我们的屏幕很明显会不够用,就比如我们在一个文章页面,我们有时候需要分享,有时候需要收藏,有时候我们还需要转到我们的个人主页之类,这都需要一个个按钮来实现,Android为我们提供了一个Menu控件,我们可以通过Menu控件来进行我们的很多功能的实现
首先需要在我们的src/main/res下新建一个menu文件夹,并新建一个Menu reSourceFile
在main.xml中加入两个item
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/add_item"
android:title="addItem"/>
<item android:id="@+id/remove_item"
android:title="removeItem"/>
</menu>
具体的实现是在onCreateOptionMenu()中完成,需要重写这个函数
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
菜单效果: 菜单getMenuInflater()获取MenuInflater对象
inflate()给当前活动创建菜单
共有两个参数
第一个参数 菜单布局文件
第二个参数 已有的菜单对象
菜单点击事件使用重写onOptionsItemSelected(MenuItem item)
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()){
case R.id.add_item:
Toast.makeText(FirstActivity.this,"you clicked add item",Toast.LENGTH_LONG).show();
case R.id.remove_item:
Toast.makeText(FirstActivity.this,"you click second item",Toast.LENGTH_SHORT).show();
default:
}
return true;
}
这里利用了Toast,当点击additem时显示"you clicked add item"
点击removeitem时显示"you clicked second item"
右上角添加了菜单
点击菜单
网友评论