【问题标题】:Android: how to use XML for custom view layoutAndroid:如何使用 XML 进行自定义视图布局
【发布时间】:2011-02-01 21:37:55
【问题描述】:

我来自 GWT 和 UIBinder,我习惯于通过扩展 Composite 来定义自定义组件,然后将所有 UI 布局代码放在 MyComponent.ui.xml 文件中。这是从较小的部分构建组件的一种非常好的方法。

我正在尝试使用自定义视图在 Android 上实现相同的效果。我已经能够以编程方式扩展View,然后通过调用addView(textView) 添加对象。我希望能够在 XML 中做到这一点,但我看不到如何将 xml 布局文件与视图相关联(除了主要的 res/layout/main.xml 文件,它为应用程序提供主要布局。

如何在 XML 中布局我的自定义视图?

编辑:我的问题不清楚。我要做的是将my_widget.xml 文件与我的自定义视图相关联。然后在 my_widget.xml 中定义各种 TextView 等,并将它们插入到我的 View 类中。

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    使用自定义视图类的完全限定名称代替内置视图之一。例如,这是一个用您的类填充窗口的布局:

    <?xml version="1.0" encoding="utf-8"?>
    <my.package.MyCustomView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/my_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        />
    

    【讨论】:

      【解决方案2】:

      要从 XML 构造视图,请使用 LayoutInflater

      【讨论】:

        【解决方案3】:

        您可以将findViewById (int id) 与XML 中定义的ID 一起使用。请参阅 android 文档 here 中的示例(向下滚动到 IDs)。

        【讨论】:

          猜你喜欢
          • 2012-07-16
          • 1970-01-01
          • 1970-01-01
          • 2012-07-01
          • 2011-07-28
          • 1970-01-01
          • 2011-03-16
          • 2013-01-13
          • 1970-01-01
          相关资源
          最近更新 更多