以便調試和註釋掉我得出的結論,該程序的問題在addTextView()方法中。我完全不知道問題出在哪裏。我的猜測是在我試圖添加到TextView的佈局中。 非常感謝您的幫助。Android以編程方式添加文本視圖
public class Books extends Activity{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.books);
addTextView("Hello World");
}
public void addTextView(String text)
{
ScrollView viewport = (ScrollView)findViewById(R.id.books);
TextView textview= (TextView)new TextView(this);
textview.setText(text);
//textview.setLayoutParams(new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
viewport.addView(textview, new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
}
public void addButton(String text)
{
ScrollView scrollview = (ScrollView)findViewById(R.id.books);
Button btnTag = (Button)new Button(Books.this);
btnTag.setLayoutParams(new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
btnTag.setText(text);
scrollview.addView(btnTag);
}
}
請發佈您的LogCat錯誤。 – Sam
您可能會考慮將ScrollView存儲爲字段,然後所有對它的引用將使用相同的名稱(這將有助於保持活動易於閱讀),並且會浪費更少的內存。 – ataulm
好吧,我認爲這是一個有效的問題,我不知道他們爲什麼關閉它。感謝上帝ataulm是一位天才,並且完美地理解它。這是一個真正的恥辱,因爲其他人會被這個困惑,並會從答案中受益 –