久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Android DrawLayout結(jié)合ListView用法實例

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

想做一個APP,設(shè)計中有側(cè)邊欄這個功能,所以現(xiàn)在開始學(xué)習(xí)下側(cè)邊欄的實現(xiàn)。

在官方的UI空間中已經(jīng)給出了DrawerLayout這個側(cè)滑的菜單空間。

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

1.主布局一定要是DrawerLayout。

2.側(cè)欄拉出來時,要點擊空白欄關(guān)閉側(cè)欄的話,一定要把空白欄設(shè)置為FrameLayout

先上個效果圖吧:

Android DrawLayout結(jié)合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'> <!-- 內(nèi)容欄--> <FrameLayout android: android:layout_width='match_parent' android:layout_height='match_parent' /> <!-- 側(cè)滑欄--> <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呢稱與說說的文本框設(shè)置出來 --> <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); } //創(chuàng)建一個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, '提示的內(nèi)容', Toast.LENGTH_LONG).show(); //關(guān)閉 側(cè)邊欄 drawer_layout.closeDrawer(listView); }}

到了現(xiàn)在,代碼完了。

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

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 临沭县| 中超| 锡林浩特市| 白玉县| 萝北县| 兰坪| 樟树市| 古田县| 逊克县| 招远市| 保定市| 沂水县| 根河市| 彝良县| 建平县| 怀集县| 广宁县| 来安县| 衡水市| 体育| 凤阳县| 金塔县| 论坛| 丽江市| 新密市| 鄂温| 霍邱县| 宜君县| 涿州市| 湖口县| 峡江县| 潜山县| 红桥区| 定兴县| 辽阳市| 辽宁省| 都昌县| 沂水县| 九龙城区| 西林县| 册亨县|