色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Android DrawLayout結合ListView用法實例

瀏覽:17日期:2022-09-22 13:45:51

想做一個APP,設計中有側邊欄這個功能,所以現在開始學習下側邊欄的實現。

在官方的UI空間中已經給出了DrawerLayout這個側滑的菜單空間。

因為在使用DrawerLayout的時候遇到了些問題,花了一天是時間才搞定,這里來記錄一下,免得到時候自己在掉坑里。

1.主布局一定要是DrawerLayout。

2.側欄拉出來時,要點擊空白欄關閉側欄的話,一定要把空白欄設置為FrameLayout

先上個效果圖吧:

Android DrawLayout結合ListView用法實例

好了,上代碼:

activity_main.xml

<android.support.v4.widget.DrawerLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' xmlns:app='http://schemas.android.com/apk/res-auto' android: android:layout_width='match_parent' android:layout_height='match_parent' tools:context='.MainActivity'> <!-- 內容欄--> <FrameLayout android: android:layout_width='match_parent' android:layout_height='match_parent' /> <!-- 側滑欄--> <ListView android: android:layout_width='300dp' android:layout_height='match_parent' android:layout_gravity='start' android:background='#fff000' android:choiceMode='singleChoice' android:divider='#FFFFFF' android:dividerHeight='1dp' /></android.support.v4.widget.DrawerLayout>

listView里面的布局 item_list.xml

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' xmlns:app='http://schemas.android.com/apk/res-auto'> <!-- 定義一個用于顯示頭像的ImageView --> <ImageView android: android:layout_width='64dp' android:layout_height='64dp' android:baselineAlignBottom='true' android:paddingLeft='8dp' /> <!-- 定義一個豎直方向的LinearLayout,把QQ呢稱與說說的文本框設置出來 --> <LinearLayout android: android:layout_width='match_parent' android:layout_height='wrap_content' android:orientation='vertical'> <TextView android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:paddingLeft='8px' android:textColor='#1D1D1C' android:textSize='20sp' /> <TextView android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:paddingLeft='8px' android:textColor='#B4B4B9' android:textSize='14sp' /> <TextView android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:paddingLeft='8px' android:textColor='#B4B4B9' android:textSize='14sp' /> </LinearLayout></LinearLayout>

主程序MainActivity.java

package action.sun.com.testdraw2;import android.support.v4.app.FragmentManager;import android.support.v4.widget.DrawerLayout;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.Toast;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class MainActivity extends AppCompatActivity implements AdapterView.OnItemClickListener{ private String[] names = new String[]{'Tom', 'Jack', 'Json'}; private String[] says = new String[]{'111111,2222222', '33333333~', '444444444~'}; private String[] times = new String[]{'1天前', '3天前~', '2天前~'}; private int[] imgIds = new int[]{R.mipmap.ic_launcher, R.mipmap.ic_launcher, R.mipmap.ic_launcher}; private DrawerLayout drawer_layout; private ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d('1', 'onCreate: xxxxxxxxxxxxxxx'); drawer_layout = (DrawerLayout) findViewById(R.id.drawer_layout); List<Map<String, Object>> listitem = new ArrayList<Map<String, Object>>(); for (int i = 0; i < names.length; i++) { Map<String, Object> showitem = new HashMap<String, Object>(); showitem.put('touxiang', imgIds[i]); showitem.put('name', names[i]); showitem.put('says', says[i]); showitem.put('time', times[i]); listitem.add(showitem); } //創建一個simpleAdapter SimpleAdapter myAdapter = new SimpleAdapter(getApplicationContext(), listitem,R.layout.item_list, new String[]{'touxiang', 'name', 'says','time'},new int[]{R.id.imgtou, R.id.name, R.id.says, R.id.time}); //ListView 容器 listView = (ListView) findViewById(R.id.list_left_drawer); listView.setAdapter(myAdapter); listView.setOnItemClickListener(this); } //點擊Item 顯示在幀頁面選擇的Item值 @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(MainActivity.this, '提示的內容', Toast.LENGTH_LONG).show(); //關閉 側邊欄 drawer_layout.closeDrawer(listView); }}

到了現在,代碼完了。

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

標簽: Android
相關文章:
主站蜘蛛池模板: 私人玩物福利 | 亚洲天堂久久新 | 亚洲国产品综合人成综合网站 | 黄黄的网站在线观看 | 欧美一区二区三区男人的天堂 | 91久久精品| 欧美成人一级片 | 国产一级二级三级毛片 | 香蕉久久久久久狠狠色 | 黄色免费看片网站 | 波多野结衣在线免费视频 | 在线日韩中文字幕 | 在线观看毛片视频 | 一区二区三区精品视频 | 视频一区在线 | 久久国内精品自在自线观看 | 特黄女一级毛片 | 国产毛片一级国语版 | 偷偷操不一样的久久 | 欧美人成毛片在线播放 | 碰碰碰免费公开在线视频 | 成人国产一区二区 | 成人满18在线观看网站免费 | 国产久草在线 | 91久久国产 | 日本精品夜色视频一区二区 | 国产特黄特色的大片观看免费视频 | 久久精品国产第一区二区 | 午夜影院福利社 | 九九热视频精品 | 久久久久免费精品国产 | 天堂8中文在线最新版在线 天堂8资源8在线 | 亚洲在线偷拍自拍 | 特级欧美午夜aa毛片 | 久久精品国产99久久久 | 亚洲精品国产福利片 | 99在线精品免费视频九九视 | 亚洲男人的天堂网 | 国产精彩视频在线观看 | 18在线观看国内精品视频 | 九九久久国产精品 |