0

私はフラグメントを使用します:

FragmentManager manager = getFragmentManager();

しかし、log cat に次のエラーが表示されます。

12-30 21:14:05.500: E/AndroidRuntime(395): 
java.lang.NoSuchMethodError:my.com.daily.Sign_upActivity.getFragmentManager

私の活動は次のとおりです。

public class sign_upActivity extends Activity implements AlertPositiveListener{

public String fonts="BZar.ttf";
private EditText fname,lname,birthdate,worktitle,company,username,pass,confpass,email,phone,phone1;
private Button signup;
private String gender;
private String education ,regiterDate,howIMF,expdate,active,picpath,deleted , expertise;
private RadioGroup radioGenderGroup;
private RadioButton radioGenderButton;
private Drawable error_indicator;
int position = 0;
int position1 = 0;

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

    OnClickListener listener = new OnClickListener() {          
        @Override
        public void onClick(View v) {

            FragmentManager manager = getFragmentManager();
            AlertDialogRadio alert = new AlertDialogRadio();
            Bundle b  = new Bundle();
            b.putInt("position", position);
            alert.setArguments(b);
            alert.show(manager, "alert_dialog_radio");

        }
    };      

    Button btn = (Button) findViewById(R.id.education_btn);
    btn.setOnClickListener(listener);
}

@Override
public void onPositiveClick(int position) {
    this.position = position;
    TextView tv1 = (TextView) findViewById(R.id.education_tv);
    tv1.setText(Education.code[this.position]); 
    education = Education.code[this.position];
}

}

誰が理由を教えてもらえますか?

ありがとうございます。私の問題はエミュレータで解決しましたが、電話で強制終了しました! minSdkVersion="4" を使用します

4

3 に答える 3

1

FragmentManagerは API レベル 11 からのみです。これをサポートしていない古いデバイスにデプロイしていると思います。

チュートリアルを見てください。

于 2012-12-29T18:22:37.673 に答える
1

バージョン 11 より前の最小 API を使用しています。フラグメントは API 11 で追加されましたが、サポート ライブラリから API 4 まで使用できます。ただし、いくつかの違いがあります。たとえば、FragmentManager にアクセスするには FragmentActivity を拡張する必要があります。

public class sign_upActivity extends FragmentActivity ... 

getSupportFragmentManager()もう 1 つの違いは、サポート ライブラリで使用する必要があることです。

于 2012-12-29T18:23:02.147 に答える
0

11 未満の API を使用しています。これらが原因で、エラーが発生しています。FragmentManaget.getFragmentManger(); メソッドは Api レベル 11 より前ではサポートされていません。

また、 getFragmentManager() メソッドは追加されていません

互換性ライブラリ

于 2012-12-29T18:34:23.000 に答える