2014-07-19 2 views
0

현재 응용 프로그램을 만들고 있지만, 활동을 시작할 수 없습니다. componentsInfo. 나는 그물에 많은 해결책을 발견했지만, 그들 중 누구도 나를 위해 일하지 않습니다. 프로젝트 파일을 정리하고 Eclipse을 다시 시작하려고해도 오류가 계속 발생합니다. DDBS을 사용하여 디버그하려고 시도했으며 'setOnClickListener'에 문제가 있음을 확인했습니다. 나는 그것을 편집하려고한다. 그러나 여전히 오류가 발생합니다.SetOnClickListener 원인이 활동 구성 요소를 시작할 수 없습니다.

참고 : 구현시 view.OnClickListener도 저에게 적합하지 않습니다.

public class MainActivity extends Activity{ 
    private Button mBreakfast; 
    private Button mLunch; 
    private Button mDinner; 
    private Button mSnack; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     if (savedInstanceState == null) { 
      getFragmentManager().beginTransaction() 
       .add(R.id.container, new PlaceholderFragment()).commit(); 
    } 

    mBreakfast = (Button) findViewById(R.id.btn_breakfast); 
    mLunch = (Button) findViewById(R.id.btn_lunch); 
    mDinner = (Button) findViewById(R.id.btn_dinner); 
    mSnack = (Button) findViewById(R.id.btn_snack); 


    mBreakfast.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      Intent intent = new Intent(MainActivity.this,RestInfoFragment.class); 
      startActivity(intent); 

     } 
    }); 
} 
} 
+0

정확히 어떤 오류가 발생하고 있습니까? 오류 로그를 여기에 게시하시기 바랍니다. –

+0

pl ur urcat –

+0

게시자의 R.id.XYZ가 R.layout.activity_main과 동일한 레이아웃에 모두 있는지 확인 하시겠습니까? 보다 구체적인 답변은 logcat에 게시하십시오. –

답변

0

글쎄, 수입 실수 일 수 있습니다!

그렇다면 :

import android.content.DialogInterface.OnClickListener; 

변화 :

import android.view.View.OnClickListener; 
0

RestInfoFragment이 조각이며, 버튼의 클릭에 그것을 시작하고 싶어?

조각이 조각을 시작 Intents.To 사용하여 활동처럼 호출되지 않습니다,이 코드를 사용 : 당신의 이름에서

getFragmentManager().beginTransaction() 
    .replace(R.id.container, new RestInfoFragment).commit(); 
0

을, 나는 RestInfoFragment이 조각 추측, 당신은 버튼 클릭에를 사용하는 Activity와 같이 RestInfoFragment로 이동하는 또 다른 활동.

조각을 활동으로 사용할 수 없습니다. RestInforFragment를 변경하여 FragmentActivity를 확장하거나 뷰에서 조각을 팽창시킵니다.

FragmentActivity를 확장하면 현재 MainActivity를 변경할 필요가 없습니다.

당신의 RestInfoFragment 전체 화면을 사용하는 경우 당신이 조각

getFragmentManager().beginTransaction() 
    .replace(R.id.container, new RestInfoFragment).commit(); 

를 사용하는 경우, 나는 FragmentActivity의 사용을 권장합니다.

관련 문제