-1

私は日食が初めてで、連絡先リストと同じようにテキストビューを使用して名前、年齢などを追加および編集できるプロジェクトを持っています

ここには3つのクラスがあります。1つはarraylistデータ用、1つはビューホルダー用、最後は私のアクティビティです。問題は、年齢にparseintを使用する場合です..文字列を使用する場合、aを使用しても問題はありませparseintん名前と年齢を入力して追加ボタンを押すと、アプリケーションが予期せず停止したことがわかります..

これはコードの一部です

public void Save(View view){
        @SuppressWarnings("unchecked")

        ArrayAdapter<Data> adapter = (ArrayAdapter<Data>)getListAdapter();

        EditText Name = (EditText)findViewById(R.id.Name);
        EditText Age = (EditText)findViewById(R.id.Age);

        String name = Name.getText().toString();
        int age = Integer.parseInt(Age.getText().toString());

        if (edit)
        {
            Data temp = adapter.getItem(position);
            temp.setData(name,age);
        }
        else
        {
            Data temp = new Data(name, age);
            friends.add(temp);
        }
        viewflipper.showNext();
    }

文字列を使用するとそのint age = Integer.parseInt(Age.getText().toString());コードの何が問題なのかわかりませんが、テキストビューのxmlをこれに変更しまし android:inputType="number" >たが、同じエラーもあります

これはログキャットです

06-15 08:25:56.419: W/KeyCharacterMap(6003): No keyboard for id 0
06-15 08:25:56.419: W/KeyCharacterMap(6003): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
06-15 08:25:58.619: W/ResourceType(6003): No package identifier when getting value for resource number 0x0000000c
06-15 08:25:58.619: D/AndroidRuntime(6003): Shutting down VM
06-15 08:25:58.629: W/dalvikvm(6003): threadid=1: thread exiting with uncaught exception (group=0x40015560)
06-15 08:25:58.650: E/AndroidRuntime(6003): FATAL EXCEPTION: main
06-15 08:25:58.650: E/AndroidRuntime(6003): android.content.res.Resources$NotFoundException: String resource ID #0xc
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.content.res.Resources.getText(Resources.java:201)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.TextView.setText(TextView.java:2857)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at itnb.week.Exercise6Activity$DataAdapter.getView(Exercise6Activity.java:165)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.AbsListView.obtainView(AbsListView.java:1430)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.ListView.measureHeightOfChildren(ListView.java:1216)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.ListView.onMeasure(ListView.java:1127)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.View.measure(View.java:8313)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.View.measure(View.java:8313)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.View.measure(View.java:8313)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.LinearLayout.measureVertical(LinearLayout.java:531)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.LinearLayout.onMeasure(LinearLayout.java:309)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.View.measure(View.java:8313)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.View.measure(View.java:8313)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.ViewRoot.performTraversals(ViewRoot.java:839)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1859)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.os.Looper.loop(Looper.java:123)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at android.app.ActivityThread.main(ActivityThread.java:3683)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at java.lang.reflect.Method.invokeNative(Native Method)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at java.lang.reflect.Method.invoke(Method.java:507)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
06-15 08:25:58.650: E/AndroidRuntime(6003):     at dalvik.system.NativeStart.main(Native Method)
4

2 に答える 2

3

使用する

 textview.setText(Integer.toString(age));
于 2012-06-24T18:15:52.720 に答える
1

テキストをintとして設定しようとしたと思います。私はあなたが試したということですtextview.setText(age);

したがって、次のように文字列を使用する必要がありますtextview.setText(" "+age);

于 2012-06-24T18:12:09.473 に答える