Android常见界面控件​

Android常见界面控件 ​3.1 简单控件的使用 ​3.1.1 Button的使用 ​Button控件表示按钮,它继承自TextView控件,既可以显示文本,又可以显示图片,同时也允许用户通过点击来执行操作,当Button控件被点击时,被按下与弹起的背景会有一个动态的切换效果,这个效果就是点击效果 。

3.1.1.2 点击事件实现方式 ​在布局文件中指定Button控件的onClick属性方式java//在layout文件中指定onClick属性

android:onClick="click"

//在Activity中实现这个click方法

public void click(View v){

Log.i("指定onClick属性方式", "button is clicked");

}123456789注意

Activity中实现的方法名称要与onClick属性设置的名称一致

匿名内部类方式java//在Activity中添加匿名内部类

btn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Log.i("匿名内部类方式", "button is clicked");

}

});1234567接口方式java//设置Button控件的点击监听事件

btn.setOnClickListener(this);

//接着当前Activity实现OnClickListener接口

public class MainActivity extends AppCompatActivity implements View.onClickListener

//然后实现OnClickListener接口中的方法

@Override

public void onClick(View v) {

Log.i("接口方式", "button is clicked");

}1234567893.1.2 RadioButton单选组合框 ​js

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="vertical">

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="25dp"

android:text="男"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="25dp"

android:text="女"/>

1234567891011121314153.2 ListView列表展示数据 ​ListView以列表的形式展示数据内容,并且能够根据列表的高度自适应屏幕显示。

属性名称功能描述android:listSelector当条目被点击后,改变条目的背景颜色android:divider设置分割线的颜色android:dividerHeight设置分割线的高度android:scrollbars是否显示滚动条android:fadingEdge去掉上边和下边的黑色阴影3.2.1 实战演练 ​xml# activity_main.xml

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical">

android:id="@+id/myTextView"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="音乐播放器"

android:textSize="18sp"

android:textColor="#B2DFEE"

android:textStyle="bold"

android:padding="16dp"

android:layout_margin="8dp"

/>

android:id="@+id/list_view"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

# list_item.xml

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal"

android:padding="10dp">

android:id="@+id/icon"

android:layout_width="40dp"

android:layout_height="40dp"

android:layout_marginEnd="10dp" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:orientation="vertical">

android:id="@+id/title"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="18sp" />

android:id="@+id/songer"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="16sp" />

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061javapackage com.example.class_listview;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.ListView;

import android.widget.TextView;

import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

// 1、定义对象

private ListView listView;

private int[] icons = {R.drawable.cq, R.drawable.du, R.drawable.qs, R.drawable.ss, R.drawable.yw, R.drawable.yhsn};

private String[] titles = {"彩券", "渡", "情书", "绅士", "意外", "银河少年"};

private String[] songers = {"薛之谦", "薛之谦", "薛之谦", "薛之谦", "薛之谦", "薛之谦"};

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

listView = findViewById(R.id.list_view);

listView.setAdapter(new MyAdapter());

// 设置点击事件

listView.setOnItemClickListener((parent, view, position, id) -> {

Toast.makeText(MainActivity.this, "点击了: " + titles[position], Toast.LENGTH_SHORT).show();

});

}

private class MyAdapter extends BaseAdapter {

@Override

public int getCount() {

return titles.length;

}

@Override

public Object getItem(int position) {

return titles[position];

}

@Override

public long getItemId(int position) {

return position;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

ViewHolder holder;

if (convertView == null) {

convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent, false);

holder = new ViewHolder();

holder.icon = convertView.findViewById(R.id.icon);

holder.title = convertView.findViewById(R.id.title);

holder.songer = convertView.findViewById(R.id.songer);

convertView.setTag(holder);

} else {

holder = (ViewHolder) convertView.getTag();

}

// 设置图标和标题

holder.icon.setImageResource(icons[position]);

holder.title.setText(titles[position]);

holder.songer.setText(songers[position]);

return convertView;

}

private class ViewHolder {

ImageView icon;

TextView title;

TextView songer;

}

}

}12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182


Tickmill 2026 年评测
扛不住了啊!国色天香,斋藤飞鸟,这种身材谁能受的了啊