gridviewandroid動態
『壹』 Android干貨之控制GridView顯示多少行
在代碼中動態添加:
GridLayout.LayoutParams gllpTv = new GridLayout.LayoutParams();
gllpTv.rowSpec = GridLayout.spec(0, 2);
gllpTv.columnSpec = GridLayout.spec(0, 1);
mGridLayout.addView(convertView, gllpTv);//把控制項和布局參數添加到GridLayout
在XML:
android:columnCount="4"//設置列數,行數類推
表格布局嘛,行列都要設置,你如過某一行後面幾列要捨去,把它合並設置透明就好了
『貳』 android中gridView怎麼在代碼里動態設置每一列的寬度
1.android:layout_height="wrap_content"
2.layout.addView(progressBar, new LayoutParam(LayoutParam.FILL_PARENT, LayoutParam.FILL_PARENT));
參考看看就知道了吧
『叄』 如何實現android中橫向滾動的gridView
法1.直接用tablelayout gridview是根據你每行的單元數自動生成的行數;
法2.可以在代碼里根據view數來動態設置列數,比如有10記錄可以設置列數為10/3+1,這樣就有三行四列了。
如果您對我的回答有不滿意的地方,還請您繼續追問;
答題不易,互相理解,互相幫助!
『肆』 Android gridview動態添加一條數據,並且是放在第一個的位置,求大神分享下
gridview的adapter數據源是一個list,然後你想添加的時候用list.add(0,數據)把數據添加到第一個位置,然後adapter在notify一下就行了
『伍』 android的gridview能不能動態改變行列顯示數
不知道行不行,你可以試試下面的方法,,如果這個方法不行 那應該就不行
setNumColumns(int numColumns) 設置顯示的列數 (有可能還需要調用一下Adapter的NotifyDataSetChanged)
要控制行數 只需要控制Adapter的 getCount回調的返回值就行了 然後notify刷新下!
『陸』 怎樣動態設置GridView的寬和高(Android)
以下兩種方式都可以做到:
一、在xml布局文件中設置,wrap_content即表示根據gridView的內容自使用寬高,代碼如下:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
二、在代碼中動態設置,可以在對gridview賦值之後,計算gridview的寬高,然後進行設置:
java">intheight=20;//此處的高度需要動態計算
intwidth=30;//此處的寬度需要動態計算
LinearLayout.LayoutParamslinearParams=newLayoutParams(width,height);
gridview.setLayoutParams(linearParams);//使設置好的布局參數應用到控制項
需要注意的是:如果你的gridview是嵌套在ScrollView中,那麼,你需要重寫gridview控制項,不然gridview只顯示一行的問題(即高度不夠),具體重寫方式,可以參考下面代碼:
/**
*@authorhnbcinfo
*自定義GridView控制項,解決在ListView或ScrollView中使用GridView導致GridView顯示不全的問題
*當前應用:時間軸中,圖片顯示
*/
{
publicGridViewForScrollView(Contextcontext,AttributeSetattrs){
super(context,attrs);
}
publicGridViewForScrollView(Contextcontext){
super(context);
}
publicGridViewForScrollView(Contextcontext,AttributeSetattrs,intdefStyle){
super(context,attrs,defStyle);
}
@Override
publicvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec){
intexpandSpec=MeasureSpec.makeMeasureSpec(
Integer.MAX_VALUE>>2,MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec,expandSpec);
}
}
『柒』 Android Studio 如何在代碼中動態添加GridView
DecorView 是android 界面的頂級View ,當前界面的整個即為DecorView。DecorView為FrameLayout,而DecorView 一般會包含一個豎直方向的LinearLayout。這個豎直方向的LinearLayout 一般分為兩個部分(具體Android版本和主題有所不同),上部分為標題欄,下部分為內容欄,而內容欄的id 為 android.R.id.content, 內容欄也是FrameLayout,我們使用setContentView(),的布局加入的就是內容欄。
動態添加View 一般是添加在我們自己的布局文件里,而setContentView時加入的我們的布局是內容欄的第一個子View,所以我們需要獲取到我們的布局對應的View。
####如何獲取DecorView?
在Activity 中直接調用 getWindow().getDecorView()
####如何獲取ContentView?
在Activity中調用
FrameLayout contentView = (FrameLayout)getWindow().getDecorView().findViewById(android.R.id.content);
或直接:
FrameLayout contentView = (FrameLayout)activity.findViewById(android.R.id.content);
####獲取我們填充的布局
ViewGroup viewGroup = (ViewGroup)contentView.getChildAt(0);
####添加View