2014-03-31 1 views
0

에 대한 찾을 수 없습니다보기는 내가하려고 모든 셜록 조각에 SherlockFragmentActivity를 연결하고 나는 내용의 오류가 무엇입니까 : 안드로이드 조각을 : ID 0x7f040034에 대한 찾을 수 없습니다보기.안드로이드 조각 : ID 0x7f040034

search.java

package com.example.festipedia_logo; 

import com.actionbarsherlock.app.SherlockFragmentActivity; 
import com.example.festipedia_logo.R.style; 

import android.app.Activity; 
import android.graphics.drawable.Drawable; 
import android.os.Bundle; 
import android.support.v4.app.FragmentActivity; 
import android.support.v4.app.FragmentTransaction; 
import android.view.ContextThemeWrapper; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.ViewGroup.LayoutParams; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemSelectedListener; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.LinearLayout; 
import android.widget.Spinner; 
import android.widget.TextView; 



public class search extends SherlockFragmentActivity { 
    private LinearLayout mLayout; 
    private Spinner search; 
    private Button submit; 
    private Spinner diffcat=null; 
    private EditText query=null; 
    ArrayAdapter<String> adapter,adapter1; 
    String[] searchstr,cat; 
    String sear,sear1,querystr; 
    Spinner spinner; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getActionBar().setDisplayShowTitleEnabled(false); 
     getActionBar().setDisplayUseLogoEnabled(false); 
     getActionBar().setDisplayShowCustomEnabled(true); 
     getActionBar().setDisplayShowHomeEnabled(false); 
     //getSupportActionBar().setIcon(R.drawable.fest); 
     //getSupportActionBar().setLogo(R.drawable.fest); 
     Drawable d=getResources().getDrawable(R.drawable.action1); 
     getActionBar().setBackgroundDrawable(d); 

     setContentView(R.layout.searchact); 
     mLayout=(LinearLayout)findViewById(R.id.linearsearch1); 
     search=(Spinner)findViewById(R.id.spinner1); 
     //spinner = (Spinner)this.findViewById(R.id.spinner1); 
     searchstr = new String[] { "Category", "Location", 
        "College Name","Fest Name"}; 

     adapter = new ArrayAdapter<String>(this, 
        android.R.layout.simple_spinner_dropdown_item,searchstr 
       ); 
     search.setAdapter(adapter); 
     // spinner.setOnClickListener(onClick()); 
     //mButton= (Button)findViewById(R.id.button1); 

     /*TextView textView=new TextView(this); 
     textView.setText("Hello");*/ 
     search.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
       public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 
        sear=search.getSelectedItem().toString(); 
        if(sear!="Category") 
         { 
          if(query==null) 
          { 
           if(diffcat!=null) 
           { mLayout.removeView(diffcat); 
            //diffcat.setVisibility(android.view.View.GONE); 
            diffcat=null; 
            mLayout.removeView(submit); 
            //submit.setVisibility(android.view.View.GONE); 
            submit=null; 
           } 
           mLayout.addView(createNewControlView()); 
           mLayout.addView(createNewButtonView()); 
           submit.setOnClickListener(onClick()); 
          } 
         } 
        else 
         { 
          if(diffcat==null) 
          { 
           if(query!=null) 
           { 
            //mLayout.removeView(query); 
            mLayout.removeView(query); 
            query=null; 
            mLayout.removeView(submit); 
            submit=null; 
           } 
           mLayout.addView(createNewSpinnerView()); 
           mLayout.addView(createNewButtonView()); 
           submit.setOnClickListener(onClick()); 
          } 
         } 
       } 

       public void onNothingSelected(AdapterView<?> adapterView) { 
        return; 
       } 
      }); 
    } 
    private OnClickListener onClick(){ 
     return new OnClickListener(){ 
      @Override 
      public void onClick(View v){ 
       if(diffcat!=null){ 
        sear1=diffcat.getSelectedItem().toString(); 
       } 
       genquery(); 
       final FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); 
       ft.replace(R.id.content_frame,new Searchresult(querystr) , "Fest Content"); 
       ft.commit(); 
       } 

     }; 
    } 
    private EditText createNewControlView(){ 
     final LayoutParams lparams=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT); 
     //query=new EditText(this,null,R.style.editTextClassic); 
     //ContextThemeWrapper newContext = new ContextThemeWrapper(this, R.style.editTextClassic); 
     query=new EditText(this); 
     query.setLayoutParams(lparams); 
     //textView.setText("New text:"+text); 
     return query; 

    } 
    private Button createNewButtonView(){ 
     final LayoutParams lparams=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT); 
     submit=new Button(this); 
     submit.setLayoutParams(lparams); 
     submit.setText("Search"); 
     return submit; 

    } 
    private Spinner createNewSpinnerView(){ 
     final LayoutParams lparams=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT); 
     diffcat=new Spinner(this); 
     cat = new String[] { "Cultural", "Technical", 
       "Sports"}; 

    adapter1 = new ArrayAdapter<String>(this, 
       android.R.layout.simple_spinner_dropdown_item,cat 
      ); 
    diffcat.setAdapter(adapter1); 

     diffcat.setLayoutParams(lparams); 
     //textView.setText("New text:"+text); 
     return diffcat; 

    } 
    private void genquery(){ 
     if(sear=="Category") 
     { 
      querystr="select * from festipedia where category = '" + sear1+"'"; 
     } 
     else 
     { 
      querystr="select * from festipedia where"+sear+" = '" +query.getText() +"'"; 
     } 

    } 
} 

로그 캣 나는이 오류를 해결할 수있는 방법

03-31 17:51:30.600: E/ViewRootImpl(32546): sendUserActionEvent() mView == null 
03-31 17:51:31.295: E/FragmentManager(32546): No view found for id 0x7f040034 (com.example.festipedia_logo:id/content_frame) for fragment Searchresult{44d17a28 #0 id=0x7f040034 Fest Content} 
03-31 17:51:31.295: E/FragmentManager(32546): Activity state: 
03-31 17:51:31.310: E/AndroidRuntime(32546): FATAL EXCEPTION: main 
03-31 17:51:31.310: E/AndroidRuntime(32546): Process: com.example.festipedia_logo, PID: 32546 
03-31 17:51:31.310: E/AndroidRuntime(32546): java.lang.IllegalArgumentException: No view found for id 0x7f040034 (com.example.festipedia_logo:id/content_frame) for fragment Searchresult{44d17a28 #0 id=0x7f040034 Fest Content} 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:919) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1467) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:440) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.os.Handler.handleCallback(Handler.java:733) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.os.Handler.dispatchMessage(Handler.java:95) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.os.Looper.loop(Looper.java:157) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at android.app.ActivityThread.main(ActivityThread.java:5356) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at java.lang.reflect.Method.invokeNative(Native Method) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at java.lang.reflect.Method.invoke(Method.java:515) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081) 
03-31 17:51:31.310: E/AndroidRuntime(32546): at dalvik.system.NativeStart.main(Native Method) 

...

답변

0

java.lang.IllegalArgumentException가 : ID 0x7f040034 에 대한 찾을 수 없습니다보기 (com.example.festipedia_logo : ID/content_frame) 단편의 SearchResult {44d17a28 # 0에 대한 ID = 0x7f040034 축제 내용}

당신은 일반적으로 당신의 searchact.xml.

FrameLayout 자사의 ID content_frameViewGroup이 없습니다.

당신은

ft.replace(R.id.content_frame,new Searchresult(querystr) , "Fest Content"); 

그래서 당신이 뷰 그룹 인 컨테이너에 조각을 추가/교체합니다. 그래서 당신은 XML에서 동일한 필요가 있습니다.

은 XML이 되세요

<FrameLayout 
    android:id="@+id/content_frame" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 
    </FrameLayout>