请任何人都可以告诉以下
之间的基本区别的setContentView(R.layout.content_main);
和
查看row = layoutInflater.inflate(R.layout.view,parent,false);
从上面的两个方法我们得到了视图,我知道第二种方法通常在Adapter中用来给视图充气。
但我的问题是---
我们可以使用setContentView方法代替充气器来获取适配器中的视图......我很困惑请帮帮我????
答案 0 :(得分:0)
public class Product
{
public long id{ get; set; }
public string title{ get; set; }
public string body_html{ get; set; }
}
:仅用于将public void setContentView (View view)
内容设置为显式视图。
Activity
:
用于从指定的xml资源中扩充新的视图层次结构。
你不能在Adapter中使用setContentView(View view),它只能用于public View inflate (int resource, ViewGroup root, boolean attachToRoot)
。
答案 1 :(得分:0)
@ans = @args[:b].times.inject(1){|acc,v| acc * @args[:a]}
类用于将布局XML文件实例化为其对应的View对象。
换句话说,它将 XML文件作为输入,并从中构建View对象。
而LayoutInflator
仅为活动方法。每个Activity都提供了一个ID为setContentView()
的FrameLayout(即内容视图)。您在setContentView中指定的任何视图都将是该Activity的视图。请注意,您还可以将视图实例传递给此方法,例如"@+id/content"
您正在使用的方法版本将在幕后为您充气。
有关详细信息,请参阅:
答案 2 :(得分:0)
每个活动都提供了一个ID为#34; @ + id / content"的FrameLayout; (即内容视图).setContentView只是一个Activity方法。你在setContentView中指定的任何视图都是该Activity.Fragments的视图,另一方面,有一个名为onCreateView的生命周期方法,它返回一个视图(如果它有一个视图)。最常见的方法是用XML扩展视图并在此方法中返回它。在这种情况下,你需要自己充气。片段没有" setContentView"方法 LayoutInflater.inflate只是膨胀并返回一个视图(你可以在任何地方使用它)。您仍然需要将该视图设置为活动中的内容视图。
答案 3 :(得分:-1)
每个活动都通过其相关视图向用户显示
否则我们无法在屏幕上看到主题
所以每个活动都需要一个视图来显示
setContentView()是在活动类中定义的方法,用于定义活动的视图,仅此而已
但是inflater是一种从xml文件中获取视图的方法
在我们从带有inflaters的xml文件中获取视图后,我们可以在任何地方使用它们
例如在OnCreateOptionsMenu()中我们应该从带有inflaters的xml文件中获取视图