こんにちは私はgridviewを使用したアプリに49のエディットテキストがあります。そこで、onCreate()メソッドにアダプタオブジェクトが含まれるアクティビティを作成しました。カスタムアダプタクラスでは、count=49を指定しました。したがって、49の編集テキストがグリッドビューに配置されます。
しかし、私の問題は、アクティビティが表示されたらすぐにデフォルトで編集テキストにいくつかの値を設定したいということです(編集テキストのデフォルト値はランダムに生成されるため、ヒント属性はアプリでは機能しません)。そこで、よく考えた後、アクティビティクラスで次のコードスニペットを使用してedittextsのオブジェクトを取得し、このコードを1つのメソッドに保持しました。
int k=0;
for(int i=0;i<editText.length;i++)
{
for(int j=0;j<editText.length;j++)
{
editText[i][j]=(EditText)gridView.getChildAt(k);
k++;
}
}
ただし、このメソッドは、アクティビティが表示される前に呼び出す必要があります。初めて、このスニペットをステートメントの後にonCreate()メソッドに保持しましたgridView.setAdapter(new TextAdapter(this));
。しかし、役に立たない、アプリケーションは力を閉じていることを示しています。後でこれをonStart()に保持しましたが、再び使用することはできません。edittextオブジェクトはまだ使用できず、強制終了を示しています。したがって、これをテストするために、アクティビティでボタンがクリックされたときに実行される1つのメソッドを保持し、その後、edittextsオブジェクトを使用できるようにしました。そのため、手動操作(ここではボタンクリック)後に値を設定したくありません。アクティビティが表示される前に値を自動的に設定したい。それでも私の問題を解決するコールバックメソッドはありますか?私はこの問題について多くの情報源を探してきましたが、ちょっと疲れました。提案してください。コードスニペットをいただければ幸いです。