ExpandableListView使用
佈局檔案
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ExpandableListView
android:id="@+id/ev"
android:layout_width="match_parent"
android:layout_height="match_parent"></ExpandableListView>
</LinearLayout>
Activity
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ExpandableListView ev;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ev = (ExpandableListView) findViewById(R.id.ev);
ev.setAdapter(new MyAdapter());
}
//Position從0開始
private class MyAdapter extends BaseExpandableListAdapter{
//返回分組的個數
public int getGroupCount() {
return 5;
}
//返回每個分組裡要顯示的個數
public int getChildrenCount(int groupPosition) {
return 3;
}
//返回某個分組物件(用不到)
public Object getGroup(int groupPosition) {
return null;
}
//返回某個分組下的子節點(用不到)
public Object getChild(int groupPosition, int childPosition) {
return null;
}
//獲取分組id,一般用分組的索引
public long getGroupId(int groupPosition) {
return groupPosition;
}
//獲取子條目id groupPosition 分組的索引 childPosition子條目的id
public long getChildId(int groupPosition, int childPosition) {
return childPosition;
}
//如果你用position當id ,那就是不穩定的,如果有自己特定的id那就是穩定的 就是幹這個用的 true穩定 false不穩定
public boolean hasStableIds() {
return false;
}
//返回某個位置分組顯示的內容
public View getGroupView(int groupPosition, boolean isExpanded,View convertView, ViewGroup parent) {
TextView tv = new TextView(getApplicationContext());
tv.setTextSize(30);
tv.setText(" 標題"+groupPosition);
return tv;
}
//返回某個分組的某個子節點的View物件
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
TextView tv = new TextView(getApplicationContext());
tv.setTextSize(15);
tv.setText(" 內容"+childPosition);
return tv;
}
//返回子節點是否可以被點選 預設是false
public boolean isChildSelectable(int groupPosition, int childPosition) {
return true;
}
}
}
相關文章
- ExpandableListViewView
- 5.ExpandableListViewView
- Android開發之ExpandableListViewAndroidView
- ExpandableListView控制元件使用中一些小問題的總結View控制元件
- Android中ExpandableListView中巢狀ListViewAndroidView巢狀
- Android ExpandableListView的簡單應用AndroidView
- 設定ExpandableListView右邊的箭頭View
- ExpandableListView實現二級列表的顯示View
- ListView與ExpandableListView設定分割線 dividerViewIDE
- expandableListView的divider該溶液顯示在黑色ViewIDE
- Android中ExpandableListView,每次只展示一個分組AndroidView
- Android ExpandableListView 帶有Checkbox的簡單應用AndroidView
- laravel使用EasyWeChat 使用Laravel
- 使用FTP限制使用者FTP
- 配置vsftpd匿名使用服務,個人使用者使用以及虛擬使用者使用配置細節!FTP
- Laravel passport 多端使用者使用LaravelPassport
- 使用 CSS 追蹤使用者CSS
- mongodb使用者與角色使用MongoDB
- RecyclerView使用指南(四)—— 使用ItemDecorationView
- RecyclerView使用指南(一)—— 基本使用View
- 使用dwebsocket在Django中使用WebsocketWebDjango
- 限制使用者使用session數Session
- 使用Index提示 強制使用索引Index索引
- ImageJ使用教程(一):開始使用
- winscp使用教程多使用者,winscp使用教程多使用者,教程詳情
- vi/vim使用進階: 在VIM中使用GDB除錯 – 使用vimgdb除錯
- 使用jquery和使用框架的區別jQuery框架
- Docker 使用者操作使用說明Docker
- 儘量使用 useReducer,不要使用 useStateuseReducer
- PyCharm使用技巧(六):Regullar Expressions的使用PyCharmExpress
- 使用Bootstrap tab頁切換的使用boot
- Urllib庫的使用一---基本使用
- 使用PyCharm引入需要使用的包PyCharm
- 使用 JWT 認證使用者身份JWT
- 使用者授權,策略的使用
- 使用普通使用者執行 dockerDocker
- 熟練使用使用jQuery Promise (Deferred)jQueryPromise
- mongoDB使用詳解(在node中使用)MongoDB