View v is unreachable 语句
Posted
技术标签:
【中文标题】View v is unreachable 语句【英文标题】:View v is unreachable statement 【发布时间】:2018-08-12 22:48:52 【问题描述】:请帮助我。
这是错误还是警告?
我该如何解决这个问题?
错误是View v
is unreachable statement
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent)
return super.getView(position, convertView, parent);
View v;
v = convertView;
LayoutInflater li = LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = li.inflate(R.layout.custom_layout, null);
TextView champ = (TextView)v.findViewById(R.id.textView);
TextView year = (TextView)v.findViewById(R.id.textView2);
ImageView pic = (ImageView)v.findViewById(R.id.imageView);
champ.setText(adaptArray.get(position).getChamp()); year.setText(adaptArray.get(position).getYear()); pic.setImageResource(adaptArray.get(position).getSport());
return v;
【问题讨论】:
您的第一个return
语句将完全跳过该方法的其余部分。
我猜你在 View v 之前返回的未格式化的混乱;
删除此行return super.getView(position, convertView, parent)
此语句使其余代码跳过。
很清楚。您的 `View v` 无法访问,因为在该行之前您使用了 return :return super.getView(position, convertView, parent);
第一条语句上的 return
将导致方法返回值并结束其范围。删除它,您的其余代码有望编译并运行。
【参考方案1】:
在 return 关键字之后写的其他任何内容都是无法访问的。 从函数的第一行删除 return super.getView(position, convertView, parent);。
【讨论】:
【参考方案2】:这是一个警告,告诉您对代码的静态分析表明您的某些代码将永远无法到达,因为该方法之前返回。
以下是将convertView
传递给super.getView(...)
来解决问题和正确使用super.getView(...)
的方法:
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent)
View v = super.getView(position, convertView, parent);
if(v == null)
LayoutInflater li = LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = li.inflate(R.layout.custom_layout, null);
TextView champ = (TextView)v.findViewById(R.id.textView);
TextView year = (TextView)v.findViewById(R.id.textView2);
ImageView pic = (ImageView)v.findViewById(R.id.imageView);
champ.setText(adaptArray.get(position).getChamp());
year.setText(adaptArray.get(position).getYear());
pic.setImageResource(adaptArray.get(position).getSport());
return v;
【讨论】:
【参考方案3】:删除这个
return super.getView(position, convertView, parent);
【讨论】:
请您补充一些详细信息 删除您的第一个退货声明。【参考方案4】:因为方法的Top这行代码:return super.getView(position, convertView, parent);
当您从method
中return
时,method
内的其余代码不会运行。
【讨论】:
以上是关于View v is unreachable 语句的主要内容,如果未能解决你的问题,请参考以下文章
记录实时问题:java 出现unreachable statement异常
Centos7网络连接不上:Network is unreachable 解决方案
connect: Network is unreachable解决方法
Python 3.5 socket OSError: [Errno 101] Network is unreachable
6443: connect: network is unreachable
解决Jmeter插件ERROR: java.io.IOException: Agent is unreachable via TCP的错误