0
我想添加ListView的動態,但由於某些原因,它不讓我設置ListView的寬度。我想知道你們是否可以幫助我。如何設置動態添加ListView的寬度?
我試圖建立一個專欄設計(類似於Plume)。這是做這件事的最好方法嗎?
這是我有:
package com.reditr.column;
import java.util.HashMap;
import android.view.ViewGroup;
import android.widget.ListView;
import com.reditr.connection.Reddit;
public class ColumnManager {
//some pointers to important vars
private ViewGroup mContainer;
private Reddit mConnection;
private HashMap<String, Column> mColumns;
public ColumnManager(ViewGroup parent, Reddit connection) {
mContainer = parent;
mConnection = connection;
mColumns = new HashMap<String, Column>();
//creates listview here
mColumns.put("reditr", new Column("/r/reditr", null, mConnection, mContainer, "reditr", null));
buildColumn(mColumns.get("reditr"));
//.getColumnView() returns the ListView Object
mContainer.addView(mColumns.get("reditr").getColumnView());
mColumns.get("reditr").run();
mColumns.put("gaming", new Column("/r/gaming", null, mConnection, mContainer, "gaming", null));
buildColumn(mColumns.get("gaming"));
mContainer.addView(mColumns.get("gaming").getColumnView());
mColumns.get("gaming").run();
}
private void buildColumn(Column column) {
ListView columnView = column.getColumnView();
columnView.setMinimumWidth(400);
columnView.setMinimumHeight(ViewGroup.LayoutParams.MATCH_PARENT);
}
}
ListView被添加到它的父級?通常你想在add()方法中使用LayoutParams設置寬度和高度。 – thomas88wp 2013-04-08 03:15:30
每次調用它時都會被添加:'mContainer.addView(mColumns.get(「reditr」)。getColumnView());' – vivatus 2013-04-08 03:39:32
啊,剛剛意識到我必須做的事情。我將代碼更改爲:'mContainer.addView(mColumns.get(「reditr」)。getColumnView(),new ViewGroup.LayoutParams(400,ViewGroup.LayoutParams.MATCH_PARENT));' – vivatus 2013-04-08 03:44:28