以下のような3つのチェックボックスがあります
Facebook CheckBox1 GooglePlus CheckBox2 Twitter CheckBox3
私は以下のコードを試しました:
if (facebookChackbox.isChecked())
{
facebook_checkbox = true;
AppUtil.facebookNetworkList_EditPost ="Facebook";
list.add("facebook");
Intent i = new Intent();
i.putExtra("facebook_boolean", true);
Log.e("facebook checkbox", "facebook checkbox" + facebook_checkbox);
}
else
{
AppUtil.facebookNetworkList_EditPost ="";
}
if (twitterChackbox.isChecked())
{
twitter_checkbox = true;
AppUtil.twitterNetworkList_EditPost ="Twitter";
list.add("twitter");
Intent i = new Intent();
i.putExtra("twitter_boolean", true);
Log.e("twitter checkbox", "twitter checkbox" + twitter_checkbox);
}
else
{
AppUtil.twitterNetworkList_EditPost ="";
}
if (googleChackbox.isChecked())
{
AppUtil.gpNetworkList_EditPost ="Google Plus";
googleplus_checkbox = true;
list.add("gplus");
Intent i = new Intent();
i.putExtra("google_plus_boolean", true);
Log.e("google plus checkbox", "google plus checkbox" + googleplus_checkbox);
}
else
{
AppUtil.gpNetworkList_EditPost ="";
}
AppUtil.SocialNetworkingList_EditPost = AppUtil.facebookNetworkList_EditPost+""+AppUtil.twitterNetworkList_EditPost+""+AppUtil.gpNetworkList_EditPost;
これらすべての静的文字列を APPUTIL クラスで宣言しました。
すべてのチェック ボックス、または 1 つまたは 2 つのチェック ボックスをオンにすると、チェック ボックスのチェックに応じて null、null、null が表示されます。
チェックボックスが選択されているチェックボックスの値が必要です。
private void processCheckboxes() {
// TODO Auto-generated method stub
list = new ArrayList<String>();
sb = new StringBuilder();
if (facebookChackbox.isChecked())
{
facebook_checkbox = true;
AppUtil.facebookNetworkList_EditPost ="Facebook";
list.add("facebook");
Intent i = new Intent();
i.putExtra("facebook_boolean", true);
Log.e("facebook checkbox", "facebook checkbox" + facebook_checkbox);
}
else
{
AppUtil.facebookNetworkList_EditPost ="";
}
if (twitterChackbox.isChecked())
{
twitter_checkbox = true;
AppUtil.twitterNetworkList_EditPost ="Twitter";
list.add("twitter");
Intent i = new Intent();
i.putExtra("twitter_boolean", true);
Log.e("twitter checkbox", "twitter checkbox" + twitter_checkbox);
}
else
{
AppUtil.twitterNetworkList_EditPost ="";
}
if (googleChackbox.isChecked())
{
AppUtil.gpNetworkList_EditPost ="Google Plus";
googleplus_checkbox = true;
list.add("gplus");
Intent i = new Intent();
i.putExtra("google_plus_boolean", true);
Log.e("google plus checkbox", "google plus checkbox" + googleplus_checkbox);
}
else
{
AppUtil.gpNetworkList_EditPost ="";
}
AppUtil.SocialNetworkingList_EditPost = AppUtil.facebookNetworkList_EditPost+""+AppUtil.twitterNetworkList_EditPost+""+AppUtil.gpNetworkList_EditPost;
for (int zz = 0; zz < list.size(); zz++) {
network = list.get(zz);
if (zz < list.size() - 1)
{
Log.i("list.size()",""+list.size());
Log.i("list.size() - 1",""+list.size());
Log.i("network",""+network);
sb.append(network + "," + network + "," + network);
Log.i("sb",""+sb);
}
else
{
Log.e("log", "List----" + zz + network);
network_list = network;
network_list = network + "," + network + "," + network;
// network_list=network+""+network+"&gplus="+network+"&twitter"+
// "" +network;
sb.append(network + "," + network + "," + network);
}
}
}
上記は私が今呼び出しているメソッドです。チェックした値を文字列に保存し、それをテキストの設定に使用したいのですが、facebookfacebookfacebook を取得しています。文字列の繰り返しが起こっていることを意味します。