安卓学习 实验二任务一 ——————打招呼

本文介绍如何在Android应用中使用Toast显示带有自定义视图的消息,包括如何设置带有图片和文字的Toast,并调整其样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作品代码

(1)在布局文件中设置EditText

[html]  view plain  copy
  1. <EditText  
  2.        android:id="@+id/ET_Name"  
  3.        android:layout_width="wrap_content"  
  4.        android:layout_height="wrap_content"  
  5.        android:layout_alignParentTop="true"  
  6.        android:layout_centerHorizontal="true"  
  7.        android:layout_marginTop="86dp"  
  8.        android:background="@android:color/background_light"  
  9.        android:drawableLeft="@drawable/name"  
  10.        android:ems="10"  
  11.        android:hint="@string/input_name"   
  12.     />  
  13.   
  14.        <requestFocus />  
  15.      

(2)接下来继续在布局文件中建立一个按钮

[html]  view plain  copy
  1. <Button  
  2.         android:id="@+id/button1"  
  3.         android:layout_width="wrap_content"  
  4.         android:layout_height="wrap_content"  
  5.         android:layout_below="@+id/ET_Name"  
  6.         android:layout_centerHorizontal="true"  
  7.         android:layout_marginTop="23dp"  
  8.         android:drawableTop="@drawable/handok" />  

在主活动中设置Toast,将输入的信息,按钮,Toast关联起来

[java]  view plain  copy
  1. package com.example.sencondandroid;  
  2.   
  3. import com.example.sencondandroid.R.drawable;  
  4.   
  5. import android.app.Activity;  
  6. import android.graphics.Color;  
  7. import android.os.Bundle;  
  8. import android.support.v4.widget.DrawerLayout;  
  9. import android.view.DragEvent;  
  10. import android.view.Gravity;  
  11. import android.view.Menu;  
  12. import android.view.MenuItem;  
  13. import android.view.View;  
  14. import android.view.View.OnClickListener;  
  15. import android.widget.Button;  
  16. import android.widget.EditText;  
  17. import android.widget.ImageView;  
  18. import android.widget.LinearLayout;  
  19. import android.widget.TextView;  
  20. import android.widget.Toast;  
  21.   
  22.   
  23. public class MainActivity extends Activity {  
  24.       
  25.   
  26.       
  27.     private Button button;  
  28.     private EditText edittext;  
  29.     @Override  
  30.     protected void onCreate(Bundle savedInstanceState) {  
  31.         super.onCreate(savedInstanceState);  
  32.         setContentView(R.layout.activity_main);  
  33.         button =(Button) findViewById(R.id.button1);  
  34.         edittext = (EditText) findViewById(R.id.ET_Name);  
  35.         button.setOnClickListener(new OnClickListener() {  
  36.               
  37.             @Override  
  38.             public void onClick(View v) {  
  39.                 String inputText = edittext.getText().toString();  
  40.                   
  41.                 Toast toast = new Toast(MainActivity.this);    
  42.                 toast.setGravity(Gravity.CENTER, 0120);    
  43.                 ImageView image = new ImageView(MainActivity.this);    
  44.                 image.setImageResource(R.drawable.smile);    
  45.                 LinearLayout ll = new LinearLayout(MainActivity.this);    
  46.                 // 向LinearLayout中添加图片、原有的View    
  47.                 ll.addView(image);    
  48.                 // 创建一个ImageView    
  49.                 TextView textView = new TextView(MainActivity.this);    
  50.                 textView.setText("hello"+inputText);    
  51.                 // 设置文本框内字体的大小和颜色    
  52.                 textView.setTextSize(30);    
  53.                 textView.setTextColor(Color.MAGENTA);    
  54.                 ll.addView(textView);    
  55.                 // 设置Toast显示自定义View                 
  56.                 toast.setView(ll);    
  57.                 // 设置Toast的显示时间    
  58.                 toast.setDuration(Toast.LENGTH_LONG);    
  59.                 toast.show();    
  60.             }  
  61.         });  
  62.     }  
  63.   
  64.   
  65.     @Override  
  66.     public boolean onCreateOptionsMenu(Menu menu) {  
  67.         // Inflate the menu; this adds items to the action bar if it is present.  
  68.         getMenuInflater().inflate(R.menu.main, menu);  
  69.         return true;  
  70.     }  
  71.   
  72.     @Override  
  73.     public boolean onOptionsItemSelected(MenuItem item) {  
  74.        
  75.         int id = item.getItemId();  
  76.         if (id == R.id.action_settings) {  
  77.             return true;  
  78.         }  
  79.         return super.onOptionsItemSelected(item);  
  80.     }  
  81. }  

3遇到的问题

Toast弹出的消息中加入图片不会加入

解决方法:找度娘,找到类似问题的网站,最终解决代码为主活动中含有注释部分,已经在原来代码上进行了修改,适应于本活动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值