Java Android - 将父母铸造成儿童与儿童
问题描述:
更新: 我当时很愚蠢,认为它在这种情况下有所不同。你不能把一个父母给儿童句号;)Java Android - 将父母铸造成儿童与儿童
我要生气了。
我有一个类:
public class ActivityMonitorItemView Extends LinearLayout
现在我使用的是LayoutInflator到返回的LinearLayout。但是,因为这将返回查看我第一投射到LinearLayout中,像这样:
LinearLayout sillyLayout = (LinearLayout) vi.inflate(R.layout.activity_monitor_item, null);
但现在当我尝试投sillyLayout到ActivityMonitorItemView ..
ActivityMonitorItemView amtv = (ActivityMonitorItemView) sillyLayout;
我得到一个ClassCastException ...
任何想法? (下面使用的实际代码)
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
ActivityMonitorItemView v = (ActivityMonitorItemView) convertView;
if(v == null)
{
LayoutInflater vi = (LayoutInflater)OurViewManager.getAnswersRef().getCurrentActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout t = (LinearLayout) vi.inflate(R.layout.activity_monitor_item, null);
v = (ActivityMonitorItemView) t;
v.LinkUpToTask(listItems.get(position));
}
return v;
}
答
除非视图膨胀实际上是一个ActivityMonitorItemView然后你会得到异常。你必须在你的xml文件中给出你的班级的全名。因此,不是的LinearLayout的它会像
<com.example.ActivityMonitorItemView
android:layout_width="wrap_content"
android:layout_height="wrap_conetent"
android:id="@+id/tester"/>
希望这有助于
稀释是,好点。我没有想到这样做!谢谢 – Micky