我在向XML创建的布局中添加按钮时遇到了问题.这就是我想要实现的目标:
//some class
else {
startActivity(new Intent(StatisticsScreen.this, ScreenTemperature.class));
}
////
//ScreenTemperatureClass
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//this is where I call another class that
//displays a nice graph
setContentView(new GraphTemperature(getApplicationContext()));
}
Run Code Online (Sandbox Code Playgroud)
我想在Button这个新屏幕上添加一个,以便它显示在图表下方.我已经尝试创建一个LinearLayout视图,然后创建一个Button并将其添加到此视图但我只是得到了NullPointerException...
任何帮助,将不胜感激.谢谢
编辑#1
这是我尝试使用的创建了一个NullPointerException'强制关闭':
Button buybutton;
LinearLayout layout;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new GraphTemperature(getApplicationContext()));
layout = (LinearLayout) findViewById(R.id.statsviewlayout);
Button buyButton = new Button(this);
buyButton.setText(R.string.button_back);
buyButton.setLayoutParams(new LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT));
layout.addView(buyButton);
}
Run Code Online (Sandbox Code Playgroud)
这是logcat错误:
ERROR/AndroidRuntime(293): java.lang.RuntimeException: Unable …Run Code Online (Sandbox Code Playgroud) 在我的Android活动中,我创建了一个扩展SurfaceView的自定义视图(使用MonoDroid,语法略有不同):
class FriendsView : SurfaceView
{
...
public FriendsView(Context context) : base(context)
{
... create my custom view ...
}
}
Run Code Online (Sandbox Code Playgroud)
在我的Activity类中,我将内容视图设置为视图:
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FillParent, ViewGroup.LayoutParams.FillParent);
FriendsView friendsView = new FriendsView(this);
SetContentView(friendsView, layoutParams);
}
Run Code Online (Sandbox Code Playgroud)
我想在视图中添加一个按钮,但无法解决如何执行此操作.我读过的所有内容都是从main.xml的角度出发的,但是我没有看到如何使用它来声明一个在我的视图中可见的按钮.同样,我无法在Activity或View类中找到一个方法,它允许我以编程方式添加Button对象.
我确信我在概念上遗漏了一些东西,但欢迎任何帮助让我朝着正确的方向前进.