【问题标题】:Android : Exchange views between tabsAndroid:在选项卡之间交换视图
【发布时间】:2011-06-21 21:27:05
【问题描述】:

我实际上有一个名为“Creation.java”的活动,它提供对不同选项卡的访问并且工作正常。

我的标签是活动,包含不同的视图,如 EditText 或 Spinners。因为我有很多数据要保存(真的很多),所以我想建议用户通过在选项卡之间切换来填充所有视图,然后在最后一个选项卡中验证所有数据并将其写入xml 文件。

但我似乎无法访问数据,例如我的第一个选项卡,以便在最后一个选项卡中使用验证按钮对其进行验证。

在活动 CreationClient.java 中设置的 creationclient.xml 中创建客户的示例:

        <EditText android:id="@+id/nom1"
            android:layout_width="@dimen/margexlarge"
            android:layout_height="wrap_content"
            android:text="Nom"
            />
        <EditText android:id="@+id/prenom1"
            android:layout_width="@dimen/margexlarge"
            android:layout_height="wrap_content"
            android:text="Prénom"
            />

我无法获取validation.java中的内容,我收到一个错误,因为它无法从视图中获取字符串:

    nom1 = (EditText) findViewById(R.id.nom1);
    prenom1 = (EditText) findViewById(R.id.prenom1);
    validationDuDossier = (Button) findViewById(R.id.validationdudossier);
    idDossier = ((nom1.getText().toString().substring(0, 2)) + (prenom1.getText().toString().substring(0,2)));

所以我的观点是:即使我在此活动中设置了布局 B,我能否访问活动 B 中布局 A 的数据? 或者我是否可以独占访问我设置为我的活动的布局中的数据?

【问题讨论】:

    标签: android layout android-tabhost


    【解决方案1】:

    您需要将编辑文本链接到最后一个选项卡。 例如,通过任何一种方式。

    info.getText().toString(lastTab);
    

    或者你可以这样做

    lastTab = info.getText().toString();
    

    从那里,您将保存信息的 lastTab 链接到最后一个视图 TextView 或您显示信息的方式。

    【讨论】:

    • 我不明白你的意思,你怎么能为方法 toString() 指定一个参数?那么 lastTab 是哪种类型?此方法不接受任何参数。
    • 您必须将活动的第一个选项卡中的信息链接到最后一个选项卡。如果每个选项卡有不同的类,则需要将用户输入的信息存储到 SQLite 数据库中。如果它在同一个类中,则需要为一个选项卡创建变量并将信息设置为最后一个选项卡数据通过这样的方式: LastInfo = FirstInfo.getText().toString;然后使用 LastInfo 变量在最后一个选项卡中显示信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-13
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多