控件

控件使用-TextView

用于在界面上面显示一段文本信息。
<TextView
    android:id="@+id/text_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="第三个活动" />Code language: HTML, XML (xml)

android:id 当前控件唯一的标识符

android:layout_width 宽度

android:layout_height 高度

android的所有控件都有这两个属性,他有三种取值:match_parent、fill_parent、wrap_content

android:text 文本信息

一个是表示由父容器决定

一个表示由内容决定

当然 除了上面三个 你可以直接设定大小。但是这样 在不同屏幕下面 会有适配问题。

android:gravity=”center”

文字对其方式,top bottom left right center

android:textSize=”24sp”

文字大小

android:textColor=”#00ff00″

android中设置字体颜色使用sp做单位。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="这里只是显式文本"
        android:gravity="center_vertical"
        android:textSize="28sp"
        android:textColor="#57d038"
        />
</LinearLayout>Code language: HTML, XML (xml)

控件使用-Button

用于和用户交互的一个控件。
<Button
    android:id="@+id/button"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="退出应用" />Code language: HTML, XML (xml)

取消英文字母大写

android:textAllCaps = “false”

添加监听事件
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.textview_layout);

        Button bt = (Button) findViewById(R.id.button);
        bt.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v){
                //
            }
        });
    }
}Code language: JavaScript (javascript)
通过实现接口的方式添加事件监听器
public class MainActivity extends AppCompatActivity implements View.OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.textview_layout);
        Button bt = (Button)findViewById(R.id.button);
        bt.setOnClickListener(this);// 在当前上下文中注册事件监听器
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.button:
                //处理button按钮的点击事件
                Toast.makeText(MainActivity.this,"foxdevelop.com",Toast.LENGTH_LONG).show();
                break;
        }
    }
}Code language: PHP (php)

控件使用-EditText

EditText是允许用户在控件里输入和编辑内容,并可以在程序中对这些内容进行处理。

应用广泛

在发微信 发短信 聊QQ等操作都要用到。

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />Code language: HTML, XML (xml)

编辑框提示文字

加入属性

android:hint=”请输入你的姓名”

输入过长的时候

我们可以通过设置

最大宽度

android:maxLines=”2″

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="请输入你的姓名"
    android:maxLines="2"
    />Code language: HTML, XML (xml)

试一下:点击按钮显示编辑框的内容

//获取编辑框内容
EditText et = (EditText)findViewById(R.id.edit_text);
String input = et.getText().toString();
Toast.makeText(NormalActivity.this,input,Toast.LENGTH_LONG).show();Code language: JavaScript (javascript)

控件使用-ImageView

用于在界面上面展示一个控件。

我们需要准备一些图片

通常放在drawable开头的目录

我们在res下面添加一个drawable-xhdpi目录,然后添加两张图片img1.png img2.png

添加ImageView 设置图片

<ImageView
    android:id="@+id/imageview1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/img1"
    />Code language: HTML, XML (xml)

点击按钮更改图片

//点击按钮更改图片
ImageView iv = (ImageView) findViewById(R.id.imageview1);
iv.setImageResource(R.drawable.img2);Code language: JavaScript (javascript)

控件使用-ProgressBar

用于在界面上面显示一个进度条

表示我们的程序正在加载一些数据

用法非常简单

<ProgressBar
    android:id="@+id/progress_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />Code language: HTML, XML (xml)

所有控件都由一个属性

visibility属性 三个可选值:

visible 可见 默认值

invisible 不可见 但是仍占据原来位置和大小(理解为透明的)

gone gone表示不仅不可见 还不占屏幕

通过setVisibility 来设置

View.VISIBLE

View.INVISIBLE

View.GONE

点击按钮显示滚动条和隐藏

//点击按钮隐藏和显式滚动条 交替着
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
if (pb.getVisibility()==View.GONE){
    pb.setVisibility(View.VISIBLE);
}
else {
    pb.setVisibility(View.GONE);
}Code language: JavaScript (javascript)

设置进度条的样式

style=”?android:attr/progressBarStyleHorizontal”

android:max=”100″ 给进度条设置一个最大值

我们动态修改

//动态修改进度条
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
pb.setProgress(pb.getProgress()+10);Code language: JavaScript (javascript)

控件使用-AlertDialog

AlertDialog可以在当前界面上弹出一个对话框。

这个对话框是指定与所有界面元素之上的。

因此一般AlertDialog是用于一些非常重要的内容或者警告信息。

比如为了防止用户误删重要内容,弹出警告框。

点击按钮

这个控件 我们不需要在布局页面中添加。

可以直接完全在java代码这边创建出来

//创建一个对话框
AlertDialog.Builder ad = new AlertDialog.Builder(NormalActivity.this);
ad.setTitle("对话框标题");
ad.setMessage("提示内容");
ad.setCancelable(false);
ad.setPositiveButton("确定", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialogInterface, int i) {
        //点击确定的时候做什么
        Toast.makeText(NormalActivity.this,"你点击确定了", Toast.LENGTH_LONG).show();
    }
});
ad.setNegativeButton("取消", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialogInterface, int i) {
        //点击取消的时候做什么
        Toast.makeText(NormalActivity.this,"你点击取消了了", Toast.LENGTH_LONG).show();
    }
});
ad.show();Code language: JavaScript (javascript)

控件使用-ProgressDialog

ProgressDialog和AlertDialog有点类似。都是在界面上面弹出一个对话框。

不同的是ProgressDialog会在界面上面显示一个进度条。

一般用来表示一些比较耗时的 操作。让用户耐心等待。

//ProgressDialog使用
ProgressDialog pd = new ProgressDialog(NormalActivity.this);
pd.setTitle("标题");
pd.setMessage("内容");
pd.setCancelable(true);
pd.show();Code language: JavaScript (javascript)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注