2014-05-26 3 views
-2

Я пытаюсь создать простое приложение в adroid add, которое просто выбирает один из 5 вариантов, когда экран прослушивается и печатает его на экране. Я даже не знаю, будет ли мой код работать, поскольку я новичок в java, но пока единственная ошибка остается на линии с публичным статическим финалом. До этого момента это всего лишь код по умолчанию.Идентификатор ошибки синтаксиса «;», {expected

 /** 
    * A placeholder fragment containing a simple view. 
    */ 
    public static class PlaceholderFragment extends Fragment { 

     public PlaceholderFragment() { 
     } 

     @Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, 
       Bundle savedInstanceState) { 
      View rootView = inflater.inflate(R.layout.fragment_main, container, false); 
      return rootView; 
     } 
    } 
    public static final String TAG = MainActivity.class.getSimpleName(); 
    if(GestureDetector.OnGestureListener){ 
     String[] myStringArray = {"Option 1","Option 2","Option 3", "Option 4", "Option 5"}; 
     Random rand = new Random(); 
     int n = rand.nextInt(4) + 1; 
     Log.d(TAG, myStringArray[n]); 
     } 
}} 
+2

Вы определили класс PlaceholderFragment и затем закрываете фигурные скобки, чтобы вы закончили этот класс. Вы не можете просто написать код после этого, как вы делаете, чтобы получить синтаксическую ошибку. Это не действительная программа. Ваш класс должен реализовать различные другие вызовы жизненного цикла, см. Здесь: http://developer.android.com/reference/android/app/Fragment.html#Lifecycle –

+0

Как мне это сделать? –

+0

Ваш оператор if не находится в методе ... который может вызвать проблемы. – Aarowaim

ответ

0
/** 
* A placeholder fragment containing a simple view. 
*/ 

    public static class PlaceholderFragment extends Fragment { 


    // place this line here........................  
public static final String TAG = MainActivity.class.getSimpleName(); 

     public PlaceholderFragment() { 
     } 

     @Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, 
       Bundle savedInstanceState) { 
      View rootView = inflater.inflate(R.layout.fragment_main, container, false); 
      return rootView; 
     } } 

    if(GestureDetector.OnGestureListener){ 
     String[] myStringArray = {"Option 1","Option 2","Option 3", "Option 4", "Option 5"}; 
     Random rand = new Random(); 
     int n = rand.nextInt(4) + 1; 
     Log.d(TAG, myStringArray[n]); 
     } }} 
0

Вы неправильно разместили если()

if(GestureDetector.OnGestureListener){ 
    String[] myStringArray = {"Option 1","Option 2","Option 3", "Option 4", "Option 5"}; 
    Random rand = new Random(); 
    int n = rand.nextInt(4) + 1; 
    Log.d(TAG, myStringArray[n]); 
    } 

выше, если() не имеет смысла в вашем коде. Это причина синтаксической ошибки, которую вы получили. И вам нужно удалить 2 лишних закрывающих фигурных скобки (}})

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