2014-01-30 2 views
1

Я пытаюсь вызвать действие из фрагмента, но приложение останавливается, когда я запускаю его в телефоне. Если я удалю намерение, он покажет тост, но когда я попытаюсь запустить его с намерением, он останавливается.Приложение Остановка при попытке открыть активность

Я уже добавил деятельность к манифесту.

package com.example.bar.adapter; 

import com.example.bar.R; 
import com.example.bar.zbarreader.CameraTestActivity; 

import android.content.Intent; 
import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.util.Log; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.Button; 
import android.widget.Toast; 

public class Inventory extends Fragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 

     //inflate the right layout 
     View rootView = inflater.inflate(R.layout.inventory, container, false); 

     // Define and execute a button 
     Button InvScan = (Button) rootView.findViewById(R.id.InvScan); 
     InvScan.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) { 
       // Show a toast 
       Toast.makeText(getActivity(), "Openning the Barcode Reader", Toast.LENGTH_SHORT).show(); 

       // Call the Activity 
       Intent IntentScanner = new Intent(getActivity(), CameraTestActivity.class); 
       Log.i(getTag(), getTag()); 
       startActivity(IntentScanner); 

      } 
     }); 

     return rootView; 

    } 

} 
+0

добавить LogCat г esult с вопросом. также убедитесь, что вы добавили функцию CameraTestActivity в AndroidManifest.xml –

+1

, покажите свой метод getTag(). –

+0

Вставьте трассировку стека за исключением, которое вы получите. Ответ, вероятно, где-то есть. – keno

ответ

0

Попробуйте

// Call the Activity 
Intent IntentScanner = new Intent(getActivity(), CameraTestActivity.class); 
Log.i(getTag(), getTag()); 
getActivity().startActivity(IntentScanner); 

Или должна быть какая-то проблема с getTag() в Log ... пожалуйста, напишите Ваше getTag().

+0

Вам не нужно использовать 'getActivity(). StartActivity (...)'. Класс 'Fragment' имеет свой собственный метод startActivity (...)'. – Squonk

+0

ошибка, которую я получаю, это followin: android: switcher: 2131230720: 0 –

0

Для каждой новой деятельности вы хотите открыть, вы должны написать это в AndroidManifest.xml:

</activity> 
     <activity android:name=".CameraTestActivity"></activity> 
     <activity android:name=".ImageTestActivity"></activity> 
    </application> 

Я надеюсь, что поможет вам :)

0

Это должно работать:

button.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View arg0) { 
    Intent nextScreen = new Intent(getApplicationContext(), newActivity.class); 
    startActivity(nextScreen); 
    finish(); 
     } 
    }); 

Я надеюсь, что поможет вам :)

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