Android开发常用控件简介

1 . TextView 显示文本
gravity:设置对齐方式 center top bottom left right
textSize:修改文字大小,如24sp
textColor:修改文字颜色,如#00ff00(绿色)
……

2 .Button 按钮,和用户交互的重要控件

 为Button注册监听器的两种方式:

① 匿名函数
public class MainActivity extends Activity {
    private Button button; 

   @Override
   protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main); 
       button = (Button) findViewById(R.id.button);   
       button.setOnClickListener(new OnClickListener() { 
       @Override  
       public void onClick(View v) {
            // 在此处添加逻辑   
        }
    });

  } 

②使用接口

public class MainActivity extends Activity implements OnClickListener {    
    private Button button;  
    @Override               
    protected void onCreate(Bundle savedInstanceState){                          
            super.onCreate(savedInstanceState);               
        setContentView(R.layout.activity_main);     
        button = (Button) findViewById(R.id.button);               
        button.setOnClickListener(this);        
     }
     @Override  
      public void onClick(View v){                      
          switch (v.getId()){   
            case R.id.button: 
            //此处添加逻辑
                breakdefaultbreak;
          }
       }
}

3 .EditText 允许用户在控件里输入和编辑内容,也是和用户交互的一个重要控件
EditText设置提示信息:

android:hint="Type something here"

EditText指定最大行数:

android:maxLine="2"

4 . 结合使用EditText和Button来完成一些功能。
例:通过点击按钮来获取EditText中输入的内容。
代码如下:

public class MainActivity extends Activity implements OnClickListener{
    private Button button;
    private EditText editText;
    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button=(Button) findViewById(R.id.button);
        editText=(editText) findViewById(R.id.edit_text);
        button.setOnClickListener(this);
    }
    @Override
    public void onClick(View v){
        switch (v.getId()){
        case R.id.button:
            String onputText=editText.getText().toString();
            Toast.makeText(MainActivity.this,inputText,Toast.LENGTH_SHORT).show();
            break;
        default:
            break;
        }
    }
}

5 .ImageView 图片

①在布局中插入图片

<ImageView
    android:id="@+id/image_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_launcher"
>
<!--假设drawable文件夹下已有一张名为ic_launcher的图片-->

②使用Button按钮和ImageView完成点击按钮切换图片的功能,假设此时drawable文件夹中有一张名为jelly_bean的图片。代码如下:
点击按钮切换图片

6 . ProgressBar 进度条

①为布局添加进度条

<ProgressBar
    android:id="@+id/progress_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    />

(此时进度条默认为圆形)
注:所有的Android控件都具有visibility属性。可选值有三种:visible(可见)、invisible(不可见但仍占据原有空间)、gone(不可见且不占空间)。可用代码设置空间的可见性,使用setVisibility()方法,传入View.VISIBLE、View.INVISIBLE、View.GONE三种值。

②实现点击按钮切换图片和ProgressBar可见性的功能。
首先,在onCreate()中添加一行声明:

progressBar=(ProgressBar) findViewById(R.id.progress_bar);

然后,在button的onClick(View v)事件中添加代码:

switch(v.getId()){
    case R.id.button:
        if(progressBar.getVisibility()==View.GONE){
        progressBar.setVisibility(View.VISIBLE);
        imageView.setImageResource(R.drawable.jelly_bean);
    }
    else{
        progressBar.setVisibility(View.GONE);
        imageView.setImageResource(R.drawable.ic_launcher);
    }
        break;
    default:
        break;
}

③更改进度条外观
在标签中增加下面两行代码:

style="?android:attr/progressBarStyleHorizontal"
android:max="100"

(max属性给进度条设置一个最大值,然后在代码中动态地更改进度条的进度)
然后在onClick()方法中的case R.id.button:后添加以下代码:

int progress=progressBar.getProgress();
progress=progress+10;
progressBar.setProgress(progress);
break;

每次点击按钮,先获取到当前进度,然后在现有的进度上+10作为更新后的进度,直到进度变为最大值100。

7 . AlertDialog 在当前界面弹出一个对话框
此对话框置顶于所有界面元素之上,能够屏蔽其他空间的交互能力。一般用它来提示一些非常重要的内容或者警告信息。
在 case R.id.button:后修改代码如下:

AlertDialog.Builder dailog=new AlertDialog.Builder(MainActivity1,this);
dialog.setTitle("This is a Dialog");
dialog.setMessage("Something important.");
dialog.setCancelable(false);
dialog.setPositiveButton("OK",new DialogInterface.OnClickListener(){
    @Override
    public void onClick(DialogInterface dialog,int which){
        //设置确定按钮的点击事件
    }
});
dialog.setNegativeButton("Cancel",new DialogInterface.OnClickListener(){
    @Override
    public void onClick(DialogInterface dialog,int which){
        //设置取消按钮的点击事件
    }
});
dialog.show();
break;
default:
    break;

其中,首先通过AlertDialog.Builder创建出一个AlertDialog的实例,并且为它设置标题、内容、可否取消等属性。
然后调用setPositionButton()方法为对话框设置确定按钮的点击事件,用setNegativeButton()方法为对话框设置取消按钮的点击事件。
最后调用show()方法将对话框显示出来。

8 .ProgressDialog 带进度条的对话框
ProgressDialog与AlertDialog用法相似,都是在界面上弹出一个对话款。不同的是,ProgressDialog会在对话框中显示一个进度条。
修改case R.id.button:后的代码如下:

ProgressDialog progressDialog=new ProgressDialog(MainActivity1.this);
progressDialog.setTitle("This is ProgressDialog");
progressDialog.setMessage("Loading……");
progressDialog.setCancelable(true);
progressDialog.show();

下图为弹出的对话框:
ProgressDialog

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值