2010-02-19 24 views
1

我有一个基本的计算器应用程序,我正在做。两个活动,主要和ResultView。简单的活动开关不工作。没有错误

我已经在它上面点击了活动A上的一个按钮以进入活动B.日志说明活动B已成功启动并“显示”,新活动的标题加载,但主体不显示。我用静态文本添加了一个简单的文本视图..请参阅底部的result.xml。我也尝试以编程方式插入信息,但那没有做到。

当我调试程序时,我尝试了用startActivity()以及ResultView类中的onCreate方法的第一行(我的活动“B”)调用活动时放置断点,但程序从未命中第二个断点。实际上,看起来Looper.class最终被调用。

的码,该位被放置在按钮处理程序上胡亚蓉答:

i.putExtra("test1",34); 

i.putExtra("test2",35); 

this.startActivity(i); 

这在OnCreate功能活性B:

public void OnCreate(Bundle 
     savedInstanceState){ 

     super.onCreate(savedInstanceState); 

     setContentView(R.layout.result); 

} 

活性是在清单内的“application”标签:

<activity 
android:name="ResultView"></activity> 

如果我没有提供足够的信息,请告诉我。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/llParent" 
    android:orientation="vertical" 
    android:padding="10dip" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"> 

    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="10dip" 
     android:text="HELLO WORLD" 
    /> </LinearLayout> 

如果需要更多的信息,请让我知道......简而言之,“HELLO WORLD”完全不显示。

回答

1

您确定public void行或之前的行包含@Override?如果不是的话,你并不是重写OnCreate方法。该代码应阅读

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

编辑
当然的 “O” 不能是一个大写字母 “O” 的...

2

这不是OnCreate,这是onCreate(小写字母O)。否则该方法将不会被覆盖。 @override注释如果省略,则不起作用,这仅仅是为了程序员的可读性。

+0

+1你当然是对的 - 他甚至不会重写这个方法。我一直认为Java不会接受和编译大写方法名称? – 2010-02-19 12:44:13

+0

太棒了,我知道你们可以帮助新手出去。我会奖励积分,但我不是注册会员。 – Brandon 2010-02-19 20:31:09

相关问题