- 在android的開發過程中,布局往往是一件特別讓人頭疼的事,一個界面就那么大,當是用戶需要填寫的信息很多,又不希望分成多個Activity來完成,在沒有美工的情況下,只能靠自己多想辦法了,下面給大家介紹一個辦法,也希望大家有更好的辦法能共享出來,大家一起學習學習。
- 首先在布局文件中,我們定義一個LinearLayout,對於這個LinearLayout的布局我們讓他的高度設為0dp,寬度設為自適應如下:
<TableLayout android:id="@+id/optionid" android:layout_width="wrap_content" android:layout_height="0dp" android:orientation="vertical" > </TableLayout>
- 接着我們在Activity中,捕獲一個按鈕點擊事件,獲得LinearLayout的高度,進行判斷,當高度為0時,重新設置他的高度,否則高度設置為0:
// 收縮擴展按鈕 btn_deldataTbl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { int tblHeight = mLinearLayout.getHeight(); if (tblHeight == 0) { btn_deldataTbl.setText("<<圖片上傳完畢收縮"); mLinearLayout.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); } else { mLinearLayout.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 0)); btn_deldataTbl.setText("展開進入圖片上傳>>"); } } });
- 效果圖如下:
- 這篇隨筆沒什么技術含量,本人只想能起到拋磚引玉的效果,大家一起交流,才會有進步,謝謝。