繁体   English   中英

带有布局填充器的不可达语句

[英]unreachable statement with layout inflater

我正在尝试使用layoutInflater将布局转换为java对象,但是当我尝试获取对LayoutInflater类的引用时,出现错误“声明无法到达”

这是我的代码

package test.app;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;

/**
 * Created by HADDAD on 12/8/13.
 */
public class TonyAdapter extends ArrayAdapter<String> {
            Context context;
    public TonyAdapter(Context c, String[] titles) {
        super(c, R.layout.sinlge_row,R.id.textView , titles);
           this.context=c;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        return super.getView(position, convertView, parent);
        LayoutInflater inflater= (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    }
}

这是因为您在第一行中返回。 将您的代码更改为:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View view = super.getView(position, convertView, parent);
    // ... more code
    return view;
}

return后,您将无法获得代码。 将其更改为:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater= (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = inflater.inflate(/** your layout.. */);
    return v;
}

或者只是通过super调用它:

public View getView(int position, View convertView, ViewGroup parent) {
    View v = super.getView(position, convertView, parent);
    // do something with v
    return v;
}

取决于您的用例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM