2015-02-04 3 views
1

Итак, ребята, я нахожу силу близко к этому, он ничего не загружает на моем LogCat, я не могу понять, что не так .. может кто-нибудь скажет мне, почему это случается, я верю, что моя логика правильная или невозможно объявить оператор if else при вызове отображения макета? если нет, может ли кто-нибудь сказать мне другой способ сделать это? он просто открывает макет, в котором ключевое слово хранится в моей глобальной переменной, которую я просто вызываю в любое время.Android if else заявление на вызов активности для макета

public class TaxiInfoWindowAdapter implements GoogleMap.InfoWindowAdapter { 

    private final View mContentsView; 
    private Activity mActivity; 
    public String title_value = (Holder.myValue).toString(); 

    public TaxiInfoWindowAdapter(Activity act){ 

     if(title_value.equals("Taxi")){ 
     mContentsView = act.getLayoutInflater().inflate(R.layout.taxi_info_window, null); 
     mActivity = act; 

     }else{ 
     mContentsView = act.getLayoutInflater().inflate(R.layout.info_window, null); 
     mActivity = act; 

     } 

    } 
} 
+2

Возможно, 'Holder.myValue' является нулевым? –

ответ

1

Seem Holder.myValue возвращается null. Прежде чем использовать его, вы должны проверить его на наличие null.

Это должно исправить вашу проблему.

public String title_value = ""; 

public TaxiInfoWindowAdapter(Activity act){ 
    if(Holder.myValue != null) 
     title_value = Holder.myValue.toString(); 
    if(title_value.equals("Taxi")){ 
     // Rest of the code 
+0

до тех пор, пока он имеет значение, он передаст инструкцию if-else ... –

+0

Если вы используете мой код, то он будет работать, даже если он равен нулю. Если его значение равно нулю, то оно переходит в другую часть. – Rohit5k2

+0

да сила близко остановилась спасибо! –

Смежные вопросы