私はモバイル開発が初めてです。私はxamarin
をvisual studio 2015
に使ってアンドロイドに取り組んでいます。私はこれに従いますsample code。私は自分のデバイスに自分のアプリケーションを配備していて、うまく動作しています。私は基本的に私はupdate layout
最初にそれで更新ボタンをクリックすると、機能のすべてが良いが、更新時に実行されている Xamarin android System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていません
を削除する機能
- 挿入
- 表示
- 更新
- を以下しています
DB
(SQLITE)からすべてのデータを取得し、Edit Text Boxes
に表示します。サンプルコードでは、updateEmployee.cs
コードが表示されます。怒鳴るエラーにを取得イムを更新している間、私は
dName
dEmail
などを宣言した上名前がname
フィールドでありながら、私は
dName
にnull値を取得していますので、同様
を怒鳴りますTextView dName, dEmail, dPhone, dDesignation; String name, email, phone, designation;
また、
initialize
の方法では、私もnull値を取得しており、eName
などiniベローiは名前フィールドがあり、この例外に
void List_ItemClick(object sender, AdapterView.ItemClickEventArgs e) { click_Employee = e.Position + 1; ICursor c = dbHelper.getSingleEntry(click_Employee); c.MoveToFirst(); name = c.GetString(c.GetColumnIndex(dbHelper.EMPLOYEE_NAME)); email = c.GetString(c.GetColumnIndex(dbHelper.EMPLOYEE_EMAIL)); phone = c.GetString(c.GetColumnIndex(dbHelper.EMPLOYEE_PHONE)); designation = c.GetString(c.GetColumnIndex(dbHelper.EMPLOYEE_DESIGNATION)); dName.Text = name; dEmail.Text = email; dPhone.Text = phone; dDesignation.Text = designation; }
を取得していているコードです:tializeは、そのAXMLアップデート1
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="10dp"> <ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="350dp" android:divider="#000" android:dividerHeight="1dp" /> <TextView android:id="@+id/eName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Name" /> <TextView android:id="@+id/eEmail" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Email" /> <TextView android:id="@+id/ePhone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Phone" /> <TextView android:id="@+id/eDesignation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Designation" /> </LinearLayout></ScrollView></LinearLayout>
を次のようにある
id
complete_data
でレイアウトですstring
にあり、上記のコードに示すように、この文字列を私の編集テキストdName
などに割り当てています。dName.text = name
には、null
例外がありますが、名前フィールドには名前が含まれています。それを行う他の方法はありますか?私は何が欠けているのか分かりません。どんな助けも高く評価されます
なぜ、AxmlにTextViewsがありますが、コードでEditTextsを使用するのですか?スターターで同時に使用してください –
@OlegBogdanovのデータは完全なデータレイアウトから来ています。このレイアウトではデータビューのみが利用できますデータの更新中にレイアウト編集テキストが使用されるので、選択されたレコード(complete_dataから来る)を編集テキストに配置して編集することができます。だからこそ私はコード内でテキストを編集したのです –
さて、コードの間違った部分を貼り付けたか、コードが間違っていますか?あなたのXMLファイルでTextView要素を表示していて、初期化メソッドでenameをEditTextにキャストしようとしていますが、それは動作していないはずです。あなたが初期化する場所とそれに依存する正確なaxmlを表示してください。 –