日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

安卓java代码标签_Android实现动态添加标签及其点击事件

發(fā)布時間:2023/11/27 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安卓java代码标签_Android实现动态添加标签及其点击事件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在做Android開發(fā)的時候,會遇到動態(tài)添加標(biāo)簽讓用戶選擇的功能,所以自己寫了個例子,運(yùn)行效果圖如下。

標(biāo)簽可以左右滑動進(jìn)行選擇,點擊的時候,會彈出toast提示選擇或者取消選擇了哪個標(biāo)簽。通過動態(tài)添加TextView作為標(biāo)簽,并給TextView設(shè)置背景,通過selector選擇器改變其背景顏色,來確定是否處于選中狀態(tài)。

代碼如下所示:

1、標(biāo)簽的布局文件,我在標(biāo)簽里只設(shè)置了一個TextView

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

android:id="@+id/textView1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_margin="10dp"

android:background="@drawable/mark_select"

android:enabled="false"

android:padding="10dp"

android:text="TextView" />

2、在res文件夾下新建drawable文件夾,標(biāo)簽的背景設(shè)為@drawable/mark_select,代碼如下所示:

當(dāng)標(biāo)簽處于選中狀態(tài),背景為@drawable/mark_beselected,當(dāng)標(biāo)簽處于未選中狀態(tài),背景為@drawable/mark_notbeselected

其中mark_notbeselected代碼為:

android:width="1dip"

android:color="#1cb0ba" />

mark_beselected代碼為:

android:width="1dip"

android:color="#1cb0ba" />

3、主頁面布局文件里包括一個水平滾動條HorizontalScrollView,代碼如下:

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

android:id="@+id/horizontalScrollView1"

android:layout_width="match_parent"

android:layout_height="wrap_content" >

android:id="@+id/linearLayout1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="horizontal" >

4、MainActivity.java代碼如下所示:

public class MainActivity extends Activity {

List list;

private LinearLayout linearLayout;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

linearLayout = (LinearLayout) findViewById(R.id.linearLayout1);

//添加標(biāo)簽內(nèi)容

list = new ArrayList();

for (int i = 0; i < 10; i++) {

String str = "標(biāo)簽" + i;

list.add(str);

}

//初始化標(biāo)簽

initMarksView();

}

private void initMarksView() {

for (int i = 0; i < list.size(); i++) {

View view = View.inflate(MainActivity.this, R.layout.mark_layout, null);

TextView tv = (TextView) view.findViewById(R.id.textView1);

tv.setText(list.get(i));

tv.setTag(i);

view.setTag(false);

// 設(shè)置view的點擊事件,與onClick中的View一致

//否則需要在onClick中,去findViewById,找出設(shè)置點擊事件的控件進(jìn)行操作

//若不如此,則無法觸發(fā)點擊事件

view.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

TextView tv = (TextView) v.findViewById(R.id.textView1);

Log.i("dxl", "TextView click");

if ((Boolean) v.getTag()) {

v.setTag(false);

tv.setEnabled(false);

Toast.makeText(MainActivity.this, "你取消了選擇標(biāo)簽" + tv.getTag(), Toast.LENGTH_SHORT).show();

} else {

v.setTag(true);

tv.setEnabled(true);

Toast.makeText(MainActivity.this, "你選擇了標(biāo)簽" + tv.getTag(), Toast.LENGTH_SHORT).show();

}

}

});

linearLayout.addView(view);

}

}

}

至此,便實現(xiàn)了動態(tài)添加表情,并可以處理標(biāo)簽點擊事件的功能。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

總結(jié)

以上是生活随笔為你收集整理的安卓java代码标签_Android实现动态添加标签及其点击事件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉(zhuǎn)載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:安卓java代码标签_Android实现动态添加标签及其点击