2011-05-27 73 views
0

我有两个活动,第一个是正确生成,但第二个不是。只有xml文件中的第一个元素会显示出来。这里是我的xml文件:布局元素没有出现

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 
<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/alternateActivity" 
    android:shadowColor="@color/shadowColor"></TextView> 
<Button 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/oldActivityButton" 
    android:text="@string/oldActivityButton"></Button> 
<Button 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/changeText" 
    android:text="@string/changeTextButton"></Button> 
<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/originalText" 
    android:id="@+id/textToChange"></TextView> 
</LinearLayout> 

,这里是我的活动对应:

package fsg.dev.activitytest; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.TextView; 

public class newActivity extends Activity { 
private Button oldActivityButton; 
private Button changeText; 
private TextView textToChange; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.alternate); 

     oldActivityButton = (Button) findViewById(R.id.oldActivityButton); 
     changeText = (Button) findViewById(R.id.changeText); 
     textToChange = (TextView) findViewById(R.id.textToChange); 

     oldActivityButton.setOnClickListener(new OnClickListener(){ 
     public void onClick(View view){ 
      changeActivity(); 
     } 
     }); 
     changeText.setOnClickListener(new OnClickListener(){ 
     public void onClick(View view){ 
      changeText(); 
     } 
     }); 
    } 

    private void changeActivity(){ 
     Intent i = new Intent(this, activityTest.class); 
     startActivity(i); 
    } 

    private void changeText(){ 
     if(textToChange.equals(R.string.originalText)){ 
     textToChange.setText(R.string.newText); 
     } else { 
     textToChange.setText(R.string.originalText); 
     } 
    } 
} 

有其他人看到这个问题?或知道一种方法来解决它?

+0

能否请您详细你想显示什么做解释新的活动。 – 2011-05-27 14:40:14

+0

PLZ你可以添加第二个活动布局的代码xml吗? – Houcine 2011-05-27 15:09:06

回答

4

尝试添加机器人:方向=“垂直”到你的LinearLayout

+0

做到了!你知道为什么吗?是因为它是从左到右运行它们,并且元素离开了屏幕? – Joe 2011-05-27 14:39:57

+1

是的,我知道为什么,我的自我也有同样的问题:-D – 2011-05-27 14:40:23

-1

更换

Intent i = new Intent(this, activityTest.class); 

通过

Intent i = new Intent().setClass(this, activityTest.class);