【问题标题】:Setting a views height is throwing a null pointer exception设置视图高度会引发空指针异常
【发布时间】:2013-10-25 15:54:52
【问题描述】:

您好,我正在尝试设置视图高度,但它在第二行抛出空指针异常。

我实际上是在尝试向列表活动添加标题。为此,我的代码是:

View header= (View)getLayoutInflater().inflate(R.layout.customheader, null);
getListView.addHeaderView(header);
header.getLayoutParams().height=(int)55; //This line is throwing a null pointer exception
setListAdapter(adapter);


@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    LayoutParams params=new LayoutParams(-1, 55);
    View header= (View)getLayoutInflater().inflate(R.layout.customheader, null);
    getListView().addHeaderView(header);
    getListView().setCacheColorHint(0);
    getListView().setBackgroundResource(R.drawable.patterns);
    setListAdapter(new Settingsadapter(this, menu));
    header.setLayoutParams(params);
}

例外: E/AndroidRuntime(504): java.lang.ClassCastException: android.view.ViewGroup$LayoutParams

【问题讨论】:

  • 别忘了标记答案,它可以帮助其他人。

标签: android view height


【解决方案1】:

您正在夸大您的视图,但没有在任何地方添加它。要设置高度,视图需要在应用程序中。

如果您尝试检索现有布局的一部分,您需要这样做:

View header = (View)findViewById(R.layout.customheader); 
header.getLayoutParams().height=55;

【讨论】:

  • 哦,好吧。我试图使用我在其他活动中使用的现有布局文件 customheader 向列表视图添加标题
【解决方案2】:

确保在您的 customheader 中,高度为 0 或某些值不输入 wrapcontent、fillparent、matchparent 值...

LayoutParams params = new LayoutParams(urWidth, 55);
    View  header= (View)getLayoutInflater().inflate(R.layout.customheader, null);

    header.setLayoutParams(params);

【讨论】:

  • 我编辑了我的程序,但我得到了这个代码的 classCastException
【解决方案3】:

如果您将其作为标题添加到 listView 中,则需要 LayoutParams 为 AbsListView.LayoutParams

AbsListView.LayoutParams params = new AbsListView.LayoutParams(urWidth, 55);
View  header= (View)getLayoutInflater().inflate(R.layout.customheader, null);
header.setLayoutParams(params);
listView.addHeader(header); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-02
    • 1970-01-01
    • 2018-06-22
    • 2020-03-13
    • 1970-01-01
    • 1970-01-01
    • 2015-04-15
    • 2015-12-22
    相关资源
    最近更新 更多