Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:如何从活动类向setContentView()方法传递多个值?_Java_Android_Setcontentview - Fatal编程技术网

Java Android:如何从活动类向setContentView()方法传递多个值?

Java Android:如何从活动类向setContentView()方法传递多个值?,java,android,setcontentview,Java,Android,Setcontentview,我在将值从MainActivityClass传递和显示到另一个MyActivityClass时遇到一些问题。所以我在这里学习了如何将值从一个类传递到另一个类。以下是MainActivity类的方法,其中包含对其他Activityy的意图: Intent intent = new Intent(this, AddAptActivity.class); Bundle extras = new Bundle(); EditText editText = (EditText) findViewById

我在将值从MainActivityClass传递和显示到另一个MyActivityClass时遇到一些问题。所以我在这里学习了如何将值从一个类传递到另一个类。以下是MainActivity类的方法,其中包含对其他Activityy的意图:

Intent intent = new Intent(this, AddAptActivity.class);
Bundle extras = new Bundle();

EditText editText = (EditText) findViewById(R.id.edit_address);
String message = editText.getText().toString();
EditText editText2 = (EditText) findViewById(R.id.edit_name);
String message2 = editText2.getText().toString();

extras.putString(EXTRA_MESSAGE, message);
extras.putString(EXTRA_MESSAGE1, message2);

intent.putExtras(extras);
startActivity(intent);
然后在MyActivityClass中接收值:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Intent intent = getIntent();

    Bundle extras = intent.getExtras();

    String message = extras.getString(MainActivity.EXTRA_MESSAGE);
    String message2 = extras.getString(MainActivity.EXTRA_MESSAGE2);

    TextView textView = new TextView(this);
    textView.setTextSize(40);
    textView.setText(message);

    TextView textView2 = new TextView(this);
    textView2.setTextSize(40);
    textView2.setText(message2);

    setContentView(textView, textView2); 
}
但是setContentView()方法不希望接受多个值。如何在另一个textview中显示其他值,然后再显示它


我想我不明白如何使用setContentView显示值。。。请帮助我,因为我是Android编程新手(一周前刚刚完成第一个教程)。

您可以使用
视图组
,例如
线性布局
相对布局
,然后将文本视图添加到该视图,然后
设置上下文视图(线性布局)


您可以使用
视图组
,例如
线性布局
相对布局
,然后向其添加文本视图,然后
设置上下文视图(线性布局)

setContentView()接受一个布局,即视图或布局资源ID。您可以将LinearLayout、RelativeLayout等传递给setContentView(),后者可以包含任意数量的视图。可能更好的方法是构建一个包含视图层次结构的布局XML文件,然后使用setContentView(R.layout.someLayout)进行设置

请参见此处的更多信息:

setContentView()采用一种布局,即视图或布局资源ID。您可以将LinearLayout、RelativeLayout等传递给setContentView(),后者可以包含任意数量的视图。可能更好的方法是构建一个包含视图层次结构的布局XML文件,然后使用setContentView(R.layout.someLayout)进行设置

请参见此处的更多信息:

您只能将视图添加到setContentView(…)中。最好创建一个包含TextView的新视图,然后将ContentView设置为此新视图

RelativeLayout layout= new RelativeLayout(this);
layout.addView(textView1);
layout.addView(textView1);
setContentView(layout);

只能将视图添加到setContentView(…)。最好创建一个包含TextView的新视图,然后将ContentView设置为此新视图

RelativeLayout layout= new RelativeLayout(this);
layout.addView(textView1);
layout.addView(textView1);
setContentView(layout);

这里有几件事不对,让我们从头开始

但是setContentView()方法不希望接受多个值。有一种方法,它接受第二个参数,但这是布局参数

不,如果你看这就是它所需要的,你不能强迫它采取更多(不重写活动类)

我想我不明白如何使用setContentView显示值

我也不这么认为,但你会的

您只需使用此方法设置一个
布局
(通常)。您正在动态创建
视图
s,这是可以的,但您不需要这样做。如果这样做,则需要将它们添加到您的
布局中(您在
setContentView()
中设置的布局)。您只需将它们添加到布局中(
someLayout.xml
),然后获取对它们的引用

所以它可能看起来像

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/*
* call this first and it will save you some grief 
*/
where someLayoutFile is the xml file without the .xml extension
setContentView(R.layout.someLayoutFile);  

Intent intent = getIntent();
Bundle extras = intent.getExtras();
String message = extras.getString(MainActivity.EXTRA_MESSAGE);
String message2 = extras.getString(MainActivity.EXTRA_MESSAGE2);

TextView textView = (TextView) findViewById(R.id.someID); // where someId is the id you give a TextVIew in your xml file
textView.setTextSize(40);
textView.setText(message);

// create another TextView in your xml and do the same with that using the appropriate layout

这里有几处错误,让我们从头开始

但是setContentView()方法不希望接受多个值。有一种方法,它接受第二个参数,但这是布局参数

不,如果你看这就是它所需要的,你不能强迫它采取更多(不重写活动类)

我想我不明白如何使用setContentView显示值

我也不这么认为,但你会的

您只需使用此方法设置一个
布局
(通常)。您正在动态创建
视图
s,这是可以的,但您不需要这样做。如果这样做,则需要将它们添加到您的
布局中(您在
setContentView()
中设置的布局)。您只需将它们添加到布局中(
someLayout.xml
),然后获取对它们的引用

所以它可能看起来像

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/*
* call this first and it will save you some grief 
*/
where someLayoutFile is the xml file without the .xml extension
setContentView(R.layout.someLayoutFile);  

Intent intent = getIntent();
Bundle extras = intent.getExtras();
String message = extras.getString(MainActivity.EXTRA_MESSAGE);
String message2 = extras.getString(MainActivity.EXTRA_MESSAGE2);

TextView textView = (TextView) findViewById(R.id.someID); // where someId is the id you give a TextVIew in your xml file
textView.setTextSize(40);
textView.setText(message);

// create another TextView in your xml and do the same with that using the appropriate layout

您只能将视图添加到setContentView(…)中。最好创建一个同时包含TextView和setContentView的新视图。您只能将视图添加到setContentView(…)。最好创建一个包含TextView和setContentView的新视图,然后将其设置为此新视图。我认为您需要更改此
setContentView(TextView,textView2)这就是我投否决票的原因guess@Raghunandan谢谢你的接球!在我回答时接到一个电话:/I我现在也注意到了,因为我正在回答一个不同的问题,而否决票引起了我的注意。我认为您需要更改此
setContentView(textView,textView2)这就是我投否决票的原因guess@Raghunandan谢谢你的接球!在我回答的时候接到了一个电话:/我现在也注意到了,因为我回答了一个不同的问题,否决票引起了我的注意