2017-06-11 78 views
0

我的Android应用程序中的InfoWindow出现此问题。当我运行此代码时:InfoWindow中setText崩溃的应用程序

@Override 
public View getInfoWindow(Marker marker) { 

    LayoutInflater inflater = getLayoutInflater(); 
    View view = inflater.inflate(R.layout.lkonty, null); 

    TextView txtName= (TextView) findViewById(R.id.txtName); 
    txtName.setText(marker.getTitle()); 
    return view; 

该应用程序在运行setText方法时崩溃。我发现了一个解决方案,加入这行代码:

setContentView(R.layout.lkonty); 

该应用程序不再崩溃,但现在信息窗口填充整个屏幕,我不知道该如何改变这种状况。

回答

0

试试这个

View v = LayoutInflater.from(parent.getContext()) 
.inflate(R.layout.lkonty,parent,false); 


TextView txtName= (TextView) view.findViewById(R.id.txtName); 

txtName.setText(marker.getTitle()); 
0

应用程序崩溃,因为您的文本视图txtName为空。 你必须找到你的txtName通过view你膨胀。 这将是这样的:

@Override 
public View getInfoWindow(Marker marker) { 

    LayoutInflater inflater = getLayoutInflater(); 
    View view = inflater.inflate(R.layout.lkonty, null); 

    TextView txtName= (TextView) view.findViewById(R.id.txtName); 
    txtName.setText(marker.getTitle()); 
    return view; 
} 
0

我想你忘了利用你视图,同时结合你的TextView。

TextView txtName= (TextView) view.findViewById(R.id.txtName); 

,你必须使用视图而使用充气器。