2012-10-09 6 views
2

회 전자가있는 RateCardActivity 활동을 생성하려고합니다. RateCardActivity에 대한 나의 레이아웃 파일은 rate_card입니다. 내 RateCardActivity은 다음과 같습니다.회 전자 활동이 작동하지 않습니다.

public class RateCardActivity { 

public void onCreate(Bundle bundle) { 
    super.onCreate(bundle); 
    setContentView(R.layout.rate_card); 

    Spinner spinner = (Spinner) findViewById(R.id.select_city); 
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, 
    R.array.select_city, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(adapter); 

} 

} 

레이아웃 파일 rate_card은 다음과 같습니다

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:custom="http://schemas.android.com/apk/res/com.olacabs.customer" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" > 

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@android:color/darker_gray" 
    android:gravity="center" 
    android:paddingBottom="4dp" 
    android:paddingTop="4dp" 
    android:text="@string/rate_card" 
    android:textColor="@color/white" 
    android:textSize="20dp" 
    custom:customFont="litera_bold.ttf" /> 

<Spinner 
    android:id="@+id/select_city" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" /> 



</LinearLayout> 

RateCardActivity은 내가 RateCardActivity를 대체 할 때와 코드의 일부 아무 문제가없는 의도 (나는 확신을 사용하여 다른 활동에서 호출 다른 활동과 함께, 응용 프로그램이 잘 작동). 에뮬레이터의 응용 프로그램에서 RateCardActivity을 열려고하면 응용 프로그램이 충돌하고 "응용 프로그램이 예기치 않게 중지되었습니다. 나중에 다시 시도하십시오."라는 메시지가 나타납니다.

내가 잘못하고있는 것을 이해하지 못하고이를 수정하는 방법을 알고 싶습니까?

+1

당신의 RateCardActivity를 선언 않았다 준 당신 매니페스트 파일? 그리고 logcat을 게시 할 수 있습니까? –

+0

먼저 활동을 확장하고 xml을 확인하고 몇 가지 일하는 것을 놓칠 수 있습니다. 하나의 샘플 코드를 제공합니다. – Satyam

+0

@Sharath, 매니페스트에서 활동을 선언하지 않았습니다. 그것은 매우 부주의했습니다. 어쨌든 고마워. – Ankush

답변

5

개선 : public class RateCardActivity extends Activity 과 안녕이 방법으로 회 활동을 사용할 수 있습니다 RateCardActivity

1

AndroidManifiest.xml에 추가, 나는 도움을 샘플 코드 ..

public class MyActivity extends Activity { 
public static EditText edtsample; 
public static EditText edtchannel; 
public static EditText edtencoding; 
private static Spinner samplespin; 
private static Spinner channelspin; 
private static Spinner encodingspin;   

@Override  
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.settings); 

    edtsample = (EditText)findViewById(R.id.audvalue1); 
    edtchannel = (EditText)findViewById(R.id.chanvalue1); 
    edtencoding = (EditText)findViewById(R.id.encodingvalue1); 
    edtchannel.setFocusable(false); 
    edtchannel.setClickable(false); 
    edtencoding.setFocusable(false); 
    edtencoding.setClickable(false) 

      samplespin = (Spinner) findViewById(R.id.audspinner1); 

    samplespin.setOnItemSelectedListener(new OnItemSelectedListener() { 

     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, 
       long id) {    
      edtsample.setText(parent.getItemAtPosition(position).toString()); 

     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parent) { 
      edtsample.setText(""); 

     } 
     }); 

        channelspin = (Spinner) findViewById(R.id.chanspinner1); 
      channelspin.setOnItemSelectedListener(new OnItemSelectedListener() { 

     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, 
       long id) { 


      if(parent.getItemAtPosition(position).equals("CHANNEL_PHONE")){ 
       edtchannel.setText(R.string.chan1); 
       System.out.println("VALUE OF " + 
            edtchannel.getEditableText().toString()) ; 
      } 
      if(parent.getItemAtPosition(position).equals("CHANNEL_CD")){ 
       edtchannel.setText(R.string.chan2); 
       System.out.println("VALUE OF " + 
           edtchannel.getEditableText().toString()) ; 
      } 
      if(parent.getItemAtPosition(position).equals("CHANNEL_HD")){ 
       edtchannel.setText(R.string.chan2); 
       System.out.println("VALUE OF " + 
           edtchannel.getEditableText().toString()) ; 
      } 
      } 
      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 
      edtchannel.setText(""); 

     } 
    }); 


    **And in XML part you do by this** 

    <Spinner 
    android:id="@+id/audspinner1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/audioText1" 
    android:spinnerMode= "dropdown" 
    android:entries="@array/sample_array" /> 

    <EditText 
    android:id="@+id/audvalue1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/audspinner1" 
    android:hint="Enter Sampling Rate" 
    android:ems="10" >