我看了API,但不能很好地理解。我不能理解这种方法的结果。我对Android完全陌生,需要帮助。
package com.javacodegeeks.android.fragmentstest;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class FragmentTwo extends Fragment
{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
return inflater.inflate(R.layout.fragment_two, container, false);
}
}
发布于 2014-12-02 18:58:25
您在xml文件中定义了一个View
。例如,你有一个列表行的layout
。
您希望从该xml创建一个View
。例如,您的ListAdapter
要求您在ListAdapter.getView()
中为列表行创建一个View
;
因此,通过使用inflater.inflate()
,您可以从您的XML文件创建View
。
还有一个静态方法View.inflate()
,它也做同样的事情。
发布于 2016-10-14 14:51:59
基本上,Inflate是一个解析第一个参数view
并将其放入第二个参数ViewGroup
中的方法。第三个参数说,现在是否将视图放在ViewGroup
中?如果它是false,你将不得不手动addView(view)
,它的好处可能是如果你想添加一个基于条件的视图,
If (view != null){
addView(view);
}
如果您没有指定它,那么默认情况下它是真的。inflate(R.layout.popup,myLinearLayout,true);基本上,将名为Popup.xml的布局文件更改为真正的布局,而不仅仅是文本,然后放入本例中指定的LinearLayout中,它是myLinearLayout,True说put it now,我之前没有任何条件或任何事情可以做。
https://stackoverflow.com/questions/27247589
复制相似问题