Android中使用toast组件做一个点击按钮打招呼的程序

发布于:2021-10-25 12:35:12

1.运行效果




2.用到的组件


1) ?EditText 组件的使用
2) ?ImageButton 组件的使用
3) ?Toast 组件的使用
4) ?Android 中的事件处理


3.程序的实现


1)将准备好的图片素材放在drawable文件夹中,由于准备的图片有的图片尺寸太大不合适,可以在res下新建一个drawable-xhdpi文件夹,将图片复*ィ计突岜湫×恕


2)在activity_main.xml中实现对页面的布局,代码如下:



xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg"
android:orientation="vertical"
tools:context="bzu.edu.cn.a03lab4.MainActivity">

<EditText
android:id="@+id/edit_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:drawableLeft="@drawable/name"
android:drawablePadding="10dp"
android:layout_marginTop="150dp"
android:layout_marginLeft="80dp"
android:background="@drawable/et_bg"
/>

<ImageButton
android:id="@+id/ima_btn"
android:layout_below="@id/edit_text"
android:paddingTop="25dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/btn_bg"
android:background="@null"//去掉图片背景
android:layout_marginLeft="150dp"

/>
RelativeLayout> 3)在drawable下新建et_bg.xml文件,实现对编辑框的美化,代码如下:



xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />//设置背景颜色
<corners android:radius="3dp"/>//设置编辑框四个角的弧度
<stroke
android:width="3dp"
android:color="#FF7F24" />//设置编辑框的框的宽和颜色
shape> 4)在layout下新建toast_layout.xml文件,布局为LinearLayout,在文件中自定义一个toast,代码如下:



?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/toast_bg"
android:paddingLeft="25dp"
>

<TextView
android:id="@+id/text_view"
android:layout_width="170dp"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/smile_blak"
android:layout_marginLeft="10dp"
android:drawablePadding="25dp"
android:gravity="center_vertical"
/>
LinearLayout>
5)在drawable下新建toast_bg.xml文件,实现对toast的美化,代码如下:



xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="30dp">corners>
<solid android:color="#FFB5C5">solid>//设置背景颜色
<stroke
android:width="3dp"
android:color="#FFFFFF" />
shape> 6)MainActivity中代码如下:



public class MainActivity extends AppCompatActivity {
private ImageButton ima_btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ima_btn=(ImageButton) findViewById(R.id.ima_btn);
ima_btn.setOnClickListener(new ButtonHandler());
}
class ButtonHandler implements View.OnClickListener{
public void onClick(View v){
String str = ((EditText)findViewById(R.id.edit_text)).getText().toString();
View toastRoot = getLayoutInflater().inflate(R.layout.toast_layout, null);
Toast toast=new Toast(getApplicationContext());
toast.setView(toastRoot);
TextView tv=(TextView)toastRoot.findViewById(R.id.text_view);
tv.setText("Hello "+str);
toast.show();
}
}
}


相关推荐

最新更新

猜你喜欢