在Android中需要有关简单概念的帮助

时间:2010-08-27 16:41:35

标签: android

我是一个完整的新手并且一无所知。我可能已经非常低效了,但这就是学习曲线。我正在制作一个Android应用程序,使用Eclipse来完成它。

该应用将有3个屏幕。在前两个屏幕上是一个按钮列表。用户点击适用于该情况的按钮,然后该按钮从该屏幕消失并出现在屏幕3上。屏幕2与屏幕1相同但具有单独的列表(选择仍然与屏幕3混合)。

我正在设置第一个屏幕,我在strings.xml中输入了很多很多字符串(这是一个很长的列表)。我们假设这是一个购物清单计划。字符串设置如下:

<string name="vc002">Bread</string>
<string name="vc003">Butter</string>

等等。布局是这样的:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/v001"
    android:layout_gravity="center"
    />
<Button
 android:id="@+id/vb01"
 android:layout_height="wrap_content"
 android:layout_width="fill_parent"
 android:layout_gravity="center"
 android:text="@string/vc001"
 />
<Button
 android:id="@+id/vb02"
 android:layout_height="wrap_content"
 android:layout_width="fill_parent"
 android:layout_gravity="center"
 android:text="@string/vc002"
 />

这是以下活动,屏幕1:

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;



public class VenialListActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        final Button vb01 = (Button)findViewById(R.id.vb01);
        vb01.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v){
         vb01.setVisibility(View.INVISIBLE);
         };
         ;  
         }
    );
    }       
}

现在我被卡住了。按钮按预期消失,但我不知道如何让它出现在屏幕3上。同样,我希望能够点击屏幕3上的按钮(如果出现错误)并将其发回国内并制作它再次可见。

有人能帮帮我吗?如果我违反任何网站规则,或者如果我让某人对我的新闻感到头疼,我会道歉。我不知道上面的内容是什么,我只是知道它有效,所以我不应该打破它。这就像学习拉丁语或希腊语或Dvorak打字。这肯定是缓慢的,我会犯更多的错误。无论如何,如果你做到这一点,我感谢你的时间和耐心。 =)

1 个答案:

答案 0 :(得分:0)

我绝对会建议为每个屏幕创建单独的活动。虽然有例外,但这就是Android应用程序的设计方式。

在Button的onClickListener()中,而不是删除它(设置它对View.INVISIBLE的可见性不会在活动中持续存在,因此,除非您使用onSaveInstantState()onRestoreInstanceState()在应用中明确处理它当用户回到此活动时它将会显示)您将要在应用程序的首选项中保存该单词并开始下一个活动,无论是第二个还是第三个。

在这些活动中,您应该阅读用户通过首选项选择的单词并从中获取。

有多种方法可以做到这一点,但是这种方法对我来说应该可以正常收集。