我需要帮助关于LayoutInflater。
在我的项目中,我收到了“避免将null作为视图根(需要解析布局参数…” lint警告。
这个警告来自Activity,在OnCreate方法中,我有这样的代码:
LayoutInflater inflater =(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.my_view, null);
这是为了举例膨胀标题。
我知道在Fragment或Adapter中使用LayoutInflater时,我有ViewGroup对象可以传递而不是null,但在Activity中遇到这种情况该怎么办?我应该抑制此警告并传递null,还是创建父对象?
编辑:
public void addTextField(String message, int textSize) {
LinearLayout field = (LinearLayout) getLayoutInflater().inflate(R.layout.text_view_field, null);
TextView textView = (TextView) field.findViewById(R.id.taroTextView);
textView.setText(message);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize);
textView.setSingleLine(false);
mFieldsLayout.addView(field, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
}
或者:
public class MyActionBarActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
LayoutInflater inflater = LayoutInflater.from(this);
View customView = inflater.inflate(R.layout.action_bar_layout, null);
actionBar.setCustomView(customView);
actionBar.setDisplayShowCustomEnabled(true);
}
}
}