【问题标题】:Change page based on Parsed XML - Android基于 Parsed XML 更改页面 - Android
【发布时间】:2013-10-09 19:53:13
【问题描述】:

我正在开发一个包含大量信息的应用程序,这需要大约 700 个活动来显示我需要的信息,所以我没有制作 700 个活动,而是将信息放入 XML 文件并解析它。我想要一个根据从 XML 文件中解析的信息显示信息的 Activity。

<item>
   <name>Monkey</name>
   <type>flying</type>
</item>
<item>
   <name>Kangaroo</name>
   <type>Brown</type>
</item>

因此,如果我解析 Monkey,Activity 将显示该项目的所有信息,在这种情况下,它将显示它是一个 Monkey,属于飞行类型。

例子:

解析猴子:

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="18dp"
    android:layout_marginTop="17dp"
    android:text="Monkey"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignRight="@+id/textView1"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="22dp"
    android:text="flying"
    android:textAppearance="?android:attr/textAppearanceMedium" />

解析袋鼠:

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="18dp"
    android:layout_marginTop="17dp"
    android:text="Kangaroo"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignRight="@+id/textView1"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="22dp"
    android:text="Brown"
    android:textAppearance="?android:attr/textAppearanceMedium" />

【问题讨论】:

  • &lt;TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="18dp" android:layout_marginTop="17dp" android:text="Monkey" android:textAppearance="?android:attr/textAppearanceLarge" /&gt; 当我发布问题时,这似乎消失了。
  • 根据您希望如何与数据交互,webView 可能是显示内容的可行选项。然后编写一个可以解析xml并从中生成html/css的类。
  • 我一直在用 webview 做,但如果没有必要,我宁愿不使用它。

标签: java android xml parsing


【解决方案1】:

我似乎无法理解您的问题,但是,是的 - 您绝对可以在 Android 上执行此操作。在您的示例中,您将拥有一个包含变量(名称和类型)的对象。解析 xml,将您的 xml 值映射到对象成员。那么这只是TextView.setText() 的问题。我建议您考虑使用 JSON 而不是 XML。

【讨论】:

    猜你喜欢
    • 2021-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-01
    • 1970-01-01
    相关资源
    最近更新 更多