android Toast大全五种情形建立属于你自己的ToastWord文档格式.docx
- 文档编号:21884064
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:27
- 大小:240.03KB
android Toast大全五种情形建立属于你自己的ToastWord文档格式.docx
《android Toast大全五种情形建立属于你自己的ToastWord文档格式.docx》由会员分享,可在线阅读,更多相关《android Toast大全五种情形建立属于你自己的ToastWord文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
Viewlayout=inflater.inflate(R.layout.custom,
(ViewGroup)findViewById(R.id.llToast));
ImageViewimage=(ImageView)layout
.findViewById(R.id.tvImageToast);
image.setImageResource(R.drawable.icon);
TextViewtitle=(TextView)layout.findViewById(R.id.tvTitleToast);
title.setText("
Attention"
);
TextViewtext=(TextView)layout.findViewById(R.id.tvTextToast);
text.setText("
完全自定义Toast"
toast=newToast(getApplicationContext());
toast.setGravity(Gravity.RIGHT|Gravity.TOP,12,40);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
5.其他线程
newThread(newRunnable(){
publicvoidrun(){
showToast();
}
}).start();
完整代码
1.Main,java
packagecom.wjq.toast;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.os.Handler;
importandroid.view.Gravity;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
importandroid.view.View.OnClickListener;
importandroid.widget.ImageView;
importandroid.widget.LinearLayout;
importandroid.widget.TextView;
importandroid.widget.Toast;
publicclassMainextendsActivityimplementsOnClickListener{
Handlerhandler=newHandler();
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViewById(R.id.btnSimpleToast).setOnClickListener(this);
findViewById(R.id.btnSimpleToastWithCustomPosition).setOnClickListener(
this);
findViewById(R.id.btnSimpleToastWithImage).setOnClickListener(this);
findViewById(R.id.btnCustomToast).setOnClickListener(this);
findViewById(R.id.btnRunToastFromOtherThread).setOnClickListener(this);
publicvoidshowToast(){
handler.post(newRunnable(){
我来自其他线程!
}
});
publicvoidonClick(Viewv){
Toasttoast=null;
switch(v.getId()){
caseR.id.btnSimpleToast:
break;
caseR.id.btnSimpleToastWithCustomPosition:
caseR.id.btnSimpleToastWithImage:
caseR.id.btnCustomToast:
caseR.id.btnRunToastFromOtherThread:
}}
2.main,xml
<
?
xmlversion="
1.0"
encoding="
utf-8"
>
LinearLayoutxmlns:
android="
android:
orientation="
vertical"
android:
layout_width="
fill_parent"
layout_height="
padding="
5dip"
gravity="
center"
Buttonandroid:
wrap_content"
id="
@+id/btnSimpleToast"
text="
默认"
/Button>
自定义显示位置"
@+id/btnSimpleToastWithCustomPosition"
@+id/btnSimpleToastWithImage"
带图片"
完全自定义"
@+id/btnCustomToast"
其他线程"
@+id/btnRunToastFromOtherThread"
/LinearLayout>
3.custom.xml
LinearLayout
xmlns:
background="
#ffffffff"
@+id/llToast"
>
TextView
layout_margin="
1dip"
textColor="
#bb000000"
@+id/tvTitleToast"
/>
@+id/llToastContent"
layout_marginLeft="
layout_marginRight="
layout_marginBottom="
15dip"
#44000000"
ImageView
layout_gravity="
@+id/tvImageToast"
paddingRight="
10dip"
paddingLeft="
#ff000000"
@+id/tvTextToast"
Android系统里面有3种类型的菜单:
optionsmenu,contextmenu,submenu。
optionsmenu
按Menu键就会显示,用于当前的Activity。
它包括两种菜单项:
因为optionsmenu在屏幕底部最多只能显示6个菜单项,这些菜单项称为iconmenu,iconmenu只支持文字(title)以及icon,可以设置快捷键,不支持checkbox以及radio控件,所以不能设置checkable选项。
而多于6的菜单项会以“more”iconmenu来调出,称为expandedmenu。
它不支持icon,其他的特性都和iconmenu一样!
在Activity里面,一般通过以下函数来使用optionsmenu:
Activity:
:
onCreateOptionsMenu(Menumenu)
创建optionsmenu,这个函数只会在menu第一次显示时调用。
onPrepareOptionsMenu(Menumenu)
更新改变optionsmenu的内容,这个函数会在menu每次显示时调用。
onOptionsItemSelected(MenuItemitem)处理选中的菜单项。
contextmenu
要在相应的view上按几秒后才显示的,用于view,跟某个具体的view绑定在一起。
这类型的菜单不支持icon和快捷键!
在Activity里面,一般通过以下函数来使用contextmenu:
registerForContextMenu(Viewview)为某个view注册contextmenu,一般在Activity:
onCreate里面调用。
onCreateContextMenu(ContextMenumenu,Viewv,ContextMenu.ContextMenuInfomenuInfo)创建contextmenu,和optionsmenu不同,contextmeun每次显示时都会调用这个函数。
onContextItemSelected(MenuItemitem)处理选中的菜单项。
submenu
以上两种menu都可以加入子菜单,但子菜单不能嵌套子菜单,这意味着在Android系统,菜单只有两层,设计时需要注意的!
同时子菜单不支持icon。
xml形式的menu定义及应用
上述的三种类型的menu都能够定义为xml资源,但需要手动地使用MenuInflater来得到Menu对象的引用。
一个菜单,对应一个xml文件,因为要求只能有一个根节点<
menu>
。
官方说<
xml>
声明可以不写,但我觉得还是写上好些,很多时候那个<
声明主要是为了声明编码格式utf-8之类的。
xml文件保存为res/menu/some_file.xml。
Java代码引用资源:
R.menu.some_file
接下来介绍相关的节点和属性(所有的属性都定义为android空间内,例如android:
icon="
@drawable/icon"
):
根节点,没有属性。
group>
表示在它里面的<
item>
在同一group。
相关属性包括:
id:
groupid
menuCategory:
对应
常量MenuCATEGORY_*
—定义了一组的优先权,有
效值:
container,system,secondary,和alternative
orderInCategory:
定义这组菜单在菜单中的默认次序,int值
checkableBehavior:
这组菜单项是否checkable。
有效值:
none,all(单选/单选按钮radiobutton),single(非单选/复选类型checkboxes)
visible:
这组菜单是否可见trueorfalse
enabled:
这组菜单是否可用,trueorfalse
菜单项,可以嵌入<
作为子菜单。
id:
itemid
menuCategory:
用来定义menu类别
用来定义次序,与一个组在一起(Usedtodefinetheorderoftheitem,withinagroup)
title:
标题
titleCondensed:
标题摘要,当原标题太长的时候,需要用简短的字符串来代替title
icon:
icon图标
alphabeticShortcut:
字母快捷键
numericShortcut:
数学快捷键
checkable:
是否为checkbox,trueorfalse
checked:
是否设置为checked状态,trueorfalse
是否可见,trueorfalse
是否可用,trueorfalse
xml示例:
xml
version="
encoding="
menu
item
@+id/item1"
title="
Item
1"
checkable="
true"
checked="
false"
/>
group
@+id/group_1"
checkableBehavior="
single"
@+id/group_item1"
1
in
group"
@+id/group_it
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android Toast大全五种情形建立属于你自己的Toast Toast 大全 情形 建立 属于 你自己