- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
阅读文档后,我不确定 ViewStub 完成了哪些我无法通过使用 View 创建 XML 然后在运行时扩充它完成的任务。
文档说使用 ViewStub 在运行时扩充 View 。除了语法更简单之外,我不确定为什么这很有用。
还是我完全错了?
最佳答案
ViewStub
的基本用途是充当以后不需要的元素的“占位符”,而无需额外的前期性能负载。现在,你的问题是为什么不动态地膨胀它呢?
它们的用途相同,只是在使用 ViewStub
时,您将所有 UI 分开并定义在单独的 XML 中,因此这是关注点分离。现在,如果您有一个动态 UI,那么最好以编程方式扩充您的 UI。
总而言之,
定义的 UI:更喜欢 ViewStub
动态 UI:更喜欢以编程方式扩充 Views
就我的经验而言,我将它用于一个我必须维护并且需要克服复杂的 Views
层次结构的项目,这需要很长时间才能加载。 ViewStub
帮助延迟加载定义的 UI,改进了 UI 的启动。
关于android - 当我也可以在没有它的情况下懒洋洋地膨胀 View 时,ViewStub 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24602829/
我实现了这样的自定义 View : public class HeaderView extends LinearLayout { @Bind(R.id.bill_summary_layout)
我对 View stub 有疑问。 这是我java文件中的ViewStub ViewStub stub = (ViewStub) findViewById(R.id.stub1); ArrayAdap
我得到一个错误 07-04 01:49:56.325: E/AndroidRuntime(9693): java.lang.NullPointerException 同时尝试在交易完成后在 Fragm
这是我的用例: 我想在运行时更改我的膨胀布局,比如首先我膨胀布局 a,然后一段时间后我想显示布局 B,然后是布局 C,等等。 我在某处读到,与其在主布局中包含布局然后隐藏/取消隐藏,不如使用 view
LinearLayout 在 iflating ViewStub 后没有边距。充气后我只能通过编程方式设置边距还是有其他方法? 最佳答案 我遇到了同样的问题,但使用的是 RelativeLayout。
在我的应用程序中,我有一个微调器和一个 ViewStub,根据从微调器中选择的用户项目,我必须膨胀不同的布局并在微调器下方显示膨胀的布局。当我的应用程序启动时,ViewStub 会在第一次从微调器中选
我有一个 ListView,其中 listview 的每一行都包含大约 10 个 ImageButton。这些按钮中的大多数都具有可见性 = 消失并且仅在非常罕见的情况下出现。我想知道是否值得将这些
我想按语法在 View 组中定位一个 View stub 。 我尝试使用 setLayoutParams() 方法,但它不适用于 View stub 。 请提出任何解决方案。 下面是我的代码。 set
我正在尝试开发一个相当复杂的 appwidget,它可以通过编程方式更改它的一部分。 Android 建议这样的事情使用 ViewStub 小部件。 根据 AppWidgets page Remote
我正在研究您启动 Navigation Drawer Activity 时生成的示例代码。在 Android 工作室中。我想做的是以编程方式更改包含的 View ,我的研究表明 ViewStub 是做
我的布局上有一些 stub ,我想知道是否可以为它们设置动画,以便它们从一个滑到另一个。 非常感谢! 最佳答案 您可以使用 ViewFlipper 作为一个简单的解决方案。只需使用 ViewFlipp
我想将 ViewStub 添加到我的布局中。 ViewStub 应该是这样的,如 xml: 我已经想出了这段代码,但布局没有显示。 我正在重复使用 id,因为我要删除并再次添加 stub 。我猜代码
我有一个元素,里面有苹果、梨和柠檬。我为苹果、梨和柠檬做了单独的布局。 如果选择了任何元素,我想获取该元素的布局。我尝试根据使用 inflate() 函数选择的布局将正确的布局放入 viewStub。
我创建了一个使用 ViewStub 的库并将其集成到我的项目中。当我运行应用程序时,我得到 java.lang.IllegalArgumentException: ViewStub must have
我最近发现了一个名为 ViewStub 的类,它可用于“延迟加载”布局资源。用法非常简单: 在我使用的布局文件中: 在我的代码中: var stub = this.FindViewById(Reso
我没有发现任何 bool 方法可以完成这项任务。我可以通过检查 viewStub 的 id 是否更改为指定为 inflatedid 的那个来做到这一点吗? Java代码: protected
我是 Android 开发的新手。 我从 https://developer.android.com/training/improving-layouts/loading-ondemand.html
几天前,我遇到了新的 Twitter API(版本 3.1.1),我试图复制我在 tweets 列表中看到的效果。 不幸的是我是新用户,我不能发布图片,所以我试图解释我在说什么 有推文列表( List
膨胀包含 fragment 的 View stub 时是否有任何问题。在 crashalytics 中我很少看到 Fatal Exception: android.view.InflateExcept
我是安卓新手,我一直在做一个项目,在我的新闻提要页面中,我试图包含一个模块化的提要 RecyclerView,它显示一个具有不同答案形式的问题,根据问题类型而变化。到目前为止,我的做法是使用 incl
我是一名优秀的程序员,十分优秀!