什么等于 android 中的 JPanel (Java)
what is equal to JPanel (Java) in android
如果我想在 Java 中每次按下某个按钮时将 2 buttons
添加到 JFrame
我创建 JPanel
并将此 2 buttons
添加到Jpanel
然后将 JPanel
添加到 JFrame
但是在android我试过了
public class object extends Activity {
ToggleButton togglebutton;
Button button;
public void onCreate(Bundle bundle){
super.onCreate(bundle);
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.HORIZONTAL);
layout.setWeightSum(100);
LinearLayout.LayoutParams par = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,30);
LinearLayout.LayoutParams part = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,70);
togglebutton = new ToggleButton(this);
button = new Button(this);
button.setLayoutParams(par);
button.setLayoutParams(part);
layout.addView(button);
layout.addView(togglebutton);
LinearLayout lay =(LinearLayout)findViewById(R.id.lay);
try {
lay.addView(layout);
}catch(Exception e){
e.printStackTrace();
}
}
}
但是没用我总是遇到异常
我能做什么?
或者 Android 中的 JPanel
等于什么?
最接近 android 的 JPanel 是布局的根视图。我认为 cricket 有正确的解决方案,而你因为没有设置 setContentView() 而收到错误。这会将您的根视图设置为指定的 xml 布局文件。例如 setContentView(R.layout.main);.
你在最初的 post 中没有提到 "adding content from one Activity to other" 并且没有包含一个 logcat 作为你的例外,但明显的问题是没有调用 setContentView
在使用 findViewById
时。
此代码创建了您要创建的 activity。
public class MainActivity extends Activity {
ToggleButton togglebutton;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout rootView = new LinearLayout(this);
rootView.setOrientation(LinearLayout.HORIZONTAL);
rootView.setWeightSum(100);
LinearLayout.LayoutParams par = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,30);
LinearLayout.LayoutParams part = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,70);
togglebutton = new ToggleButton(this);
button = new Button(this);
button.setText("Click Me");
button.setLayoutParams(par);
button.setLayoutParams(part);
rootView.addView(button);
rootView.addView(togglebutton);
setContentView(rootView);
}
}
如果我想在 Java 中每次按下某个按钮时将 2 buttons
添加到 JFrame
我创建 JPanel
并将此 2 buttons
添加到Jpanel
然后将 JPanel
添加到 JFrame
但是在android我试过了
public class object extends Activity {
ToggleButton togglebutton;
Button button;
public void onCreate(Bundle bundle){
super.onCreate(bundle);
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.HORIZONTAL);
layout.setWeightSum(100);
LinearLayout.LayoutParams par = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,30);
LinearLayout.LayoutParams part = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,70);
togglebutton = new ToggleButton(this);
button = new Button(this);
button.setLayoutParams(par);
button.setLayoutParams(part);
layout.addView(button);
layout.addView(togglebutton);
LinearLayout lay =(LinearLayout)findViewById(R.id.lay);
try {
lay.addView(layout);
}catch(Exception e){
e.printStackTrace();
}
}
}
但是没用我总是遇到异常
我能做什么?
或者 Android 中的 JPanel
等于什么?
最接近 android 的 JPanel 是布局的根视图。我认为 cricket 有正确的解决方案,而你因为没有设置 setContentView() 而收到错误。这会将您的根视图设置为指定的 xml 布局文件。例如 setContentView(R.layout.main);.
你在最初的 post 中没有提到 "adding content from one Activity to other" 并且没有包含一个 logcat 作为你的例外,但明显的问题是没有调用 setContentView
在使用 findViewById
时。
此代码创建了您要创建的 activity。
public class MainActivity extends Activity {
ToggleButton togglebutton;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout rootView = new LinearLayout(this);
rootView.setOrientation(LinearLayout.HORIZONTAL);
rootView.setWeightSum(100);
LinearLayout.LayoutParams par = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,30);
LinearLayout.LayoutParams part = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,70);
togglebutton = new ToggleButton(this);
button = new Button(this);
button.setText("Click Me");
button.setLayoutParams(par);
button.setLayoutParams(part);
rootView.addView(button);
rootView.addView(togglebutton);
setContentView(rootView);
}
}