国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現下拉展示條目效果

2019-10-21 21:26:14
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android下拉展示條目的具體代碼,供大家參考,具體內容如下

布局文件

 

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_main"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"android:background="#000000"tools:context="com.example.a2_.MainActivity"><EditText  android:id="@+id/et_input"  android:layout_width="match_parent"  android:layout_height="wrap_content"  android:textColor="#fff"  android:text="請輸入內容" /><ImageButton  android:padding="6dp"  android:background="@null"  android:layout_alignRight="@id/et_input"  android:id="@+id/ib"  android:src="@mipmap/down_arrow"  android:layout_width="wrap_content"  android:layout_height="wrap_content" /></RelativeLayout>

條目布局文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"android:padding="5dp"android:descendantFocusability="blocksDescendants"android:orientation="horizontal"><ImageView  android:src="@mipmap/user"  android:id="@+id/iv_user"  android:layout_width="wrap_content"  android:layout_height="wrap_content" /><TextView  android:layout_weight="1"  android:id="@+id/tv_data"  android:text="100"  android:textColor="#000000"  android:gravity="center_horizontal"  android:layout_width="0dp"  android:layout_height="wrap_content" /><ImageButton  android:background="@null"  android:src="@mipmap/delete"  android:id="@+id/iv_delete"  android:layout_width="wrap_content"  android:layout_height="wrap_content" /></LinearLayout>

核心代碼

package com.example.a2_;import android.graphics.drawable.ColorDrawable;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.EditText;import android.widget.ImageButton;import android.widget.ImageView;import android.widget.ListView;import android.widget.PopupWindow;import android.widget.TextView;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {private EditText et_input;private PopupWindow popupWindow;private ListView lv_list;private ArrayList<String> data;private MyAdapter myAdapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  //初始化控件  et_input = (EditText) findViewById(R.id.et_input);  ImageButton ib = (ImageButton) findViewById(R.id.ib);  //初始化數據源  initData();  //創建一個listView  lv_list = new ListView(this);  //給listview設置背景  lv_list.setBackgroundResource(R.mipmap.listview_background);  //給listview設置適配器  myAdapter = new MyAdapter();  lv_list.setAdapter(myAdapter);  //給listview設置條目點擊事件  lv_list.setOnItemClickListener(new AdapterView.OnItemClickListener() {    @Override    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {      //當點擊到一個條目的時候,就把這個條目的內容顯示在輸入框中      et_input.setText(data.get(position));      popupWindow.dismiss();    }  });  //給按鈕設置點擊事件  ib.setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View v) {      //當點擊下拉按鈕時,顯示列表選項      showPopup();    }  });}//初始化數據private void initData() {  //創建一個集合,用來存儲數據  data = new ArrayList<>();  //通過for循環創建數據  for (int i = 1;i<20;i++){    data.add(100+i+"");  }}//顯示下拉的列表條目private void showPopup() {  //創建PopupWindow對象  popupWindow = new PopupWindow(lv_list,et_input.getWidth(),500,true);  //為了在點擊列表條目之外的區域能夠讓列表條目隱藏,為列表條目設置一個背景  popupWindow.setBackgroundDrawable(new ColorDrawable());  //讓列表條目顯示 并指定在哪個列表條目下展示  popupWindow.showAsDropDown(et_input);}//創建一個適配器class MyAdapter extends BaseAdapter{  @Override  public int getCount() {    return data.size();  }  @Override  public String getItem(int position) {    return data.get(position);  }  @Override  public long getItemId(int position) {    return position;  }  @Override  public View getView(final int position, View convertView, ViewGroup parent) {    //判斷convertView是否為空    if (convertView==null){      convertView = View.inflate(MainActivity.this,R.layout.lv_item,null);    }    //找到控件    TextView tv_data = (TextView) convertView.findViewById(R.id.tv_data);    ImageView iv_delete = (ImageView) convertView.findViewById(R.id.iv_delete);    //設置點擊事件    iv_delete.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View v) {        //刪除集合里面的數據        data.remove(position);        //刷新頁面        myAdapter.notifyDataSetChanged();      }    });    //獲取數據    String data = getItem(position);    //設置數據    tv_data.setText(data);    return convertView;  }}}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 历史| 台前县| 内丘县| 桐庐县| 北碚区| 郯城县| 湖口县| 渭南市| 嘉禾县| 宁德市| 龙门县| 贡嘎县| 文山县| 宜兰市| 乐业县| 甘泉县| 柳江县| 筠连县| 绥宁县| 乌兰察布市| 卫辉市| 武汉市| 垣曲县| 迁西县| 莆田市| 习水县| 嘉峪关市| 庆阳市| 衢州市| 郸城县| 勃利县| 启东市| 资溪县| 青龙| 务川| 新竹市| 交口县| 平南县| 康马县| 平南县| 东安县|