1

我在尝试在 XML 中为我的 Fragments 提供一个 id 时遇到问题,但是我似乎无法做到这一点。我尝试了以下教程,但 id 似乎没有设置为片段。我正在使用提供的滑动 + 部分模板。这是我的主要活动的 xml:

<android.support.v4.view.ViewPager
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

<!--
This title strip will display the currently visible page title, as well as the page
titles for adjacent pages.

-->

<android.support.v4.view.PagerTitleStrip
    android:id="@+id/pager_title_strip"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="top"
    android:background="#33b5e5"
    android:paddingBottom="4dp"
    android:paddingTop="4dp"
    android:textColor="#fff" />

<Fragment
    android:id="@+id/account_information_fragment"
    android:name="com.example.AccountInformationFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

</android.support.v4.view.ViewPager>

然后在我的片段类中,我使用它来设置布局:

final View view = inflater.inflate(R.layout.account_information_layout, container, false);

而且该布局不包含任何标签。任何帮助将非常感激

4

1 回答 1

2

我想我找到了问题所在。首先,片段标签需要以小写 F 开头,如下所示:

好的:

<fragment>

坏的:

<Fragment>

其次,恐怕我忘记了 Toast 在尝试显示任何非字符串时会返回 false。你将不得不使用

String.valueOf(fragment.getId());

为了让它在吐司中显示。

我不知道为什么一开始这不起作用,因为我相信我之前为标签尝试了 f 和 F 。设置一个 android:tag 帮助我调试它,因为它自然地返回一个字符串。

于 2013-02-14T01:29:02.507 回答