我在向主要活动添加自定义类时遇到问题。
我的自定义类中的代码:
public class DetailView extends View {
public DetailView(Context context) {
super(context);
this.setBackgroundColor(0xFF00FF00 );
}
}
主要活动中的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
linearLayout = (LinearLayout) findViewById(R.id.linearLayout1);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
linearLayout.setOrientation(LinearLayout.VERTICAL);
txt = new TextView(this);
txt.setText("hello");
txt.setId(6);
txt.setLayoutParams(params);
linearLayout.addView(txt);
DetailView detailView = new DetailView(this.getApplicationContext());
linearLayout.addView(detailView);
}
为什么不能看到detailView? 我是Android开发的新手,所以我需要任何帮助,或者一些好的链接或任何东西。感谢
答案 0 :(得分:3)
添加了视图,但没有设置尺寸。看看现有的代码我猜你想要它填充宽度并且有一个小的高度 - 只是假设。请尝试以下方法:
DetailView detailView = new DetailView(this);
params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 2); // 2 pixels height
linearLayout.addView(detailView, params);
此外,DetailView
的上下文是活动,而不是应用程序上下文。