package com.moupress.app.friendshost.ui; import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View.OnClickListener; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.RadioButton; import android.widget.TextView; import com.moupress.app.friendshost.Const; import com.moupress.app.friendshost.R; import com.moupress.app.friendshost.ui.listeners.ContentViewListener; import com.moupress.app.friendshost.util.FlurryUtil; import com.moupress.app.friendshost.util.Pref; public class UptFreqView extends DialogView { private Activity zActivity; private Intent intentBack; public static final String TAG = "UptFreqView"; //Radio Buttons Index private int prevInd = -1; private int curInd = -1; private int tempInd = -1; private ArrayList<RadioBtn> radioBtns; private OnCheckedChangeListener onCheckedChangeListener; private OnClickListener selBtnOnClickListener; public UptFreqView(Activity zActivity, Intent intentBack) { // TODO Auto-generated constructor stub this.zActivity = zActivity; this.intentBack = intentBack; } @Override public void LoadView(Bundle loadData) { // TODO Auto-generated method stub prevInd = tempInd = curInd = LoadRadioBtns(radioBtns,onCheckedChangeListener); } @Override protected void RefreshView() { // TODO Auto-generated method stub } @Override public void InitContent(Activity activity, ContentViewListener contentViewListener){ //this.titleId = R.string.upt_frequency_title; //this.setBtnMsgId = R.string.upt_frequency_btn_txt; this.radioBtns = new ArrayList<RadioBtn>(); this.onCheckedChangeListener = new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton btn, boolean value) { if(value == true) { RadioBtn radioBtn = (RadioBtn) btn.getTag(); curInd = radioBtns.indexOf(radioBtn); if(tempInd != curInd && tempInd >= 0) { ((RadioButton)zActivity.findViewById(radioBtns.get(tempInd).radioBtnId)).setChecked(false); } tempInd = curInd; } } }; this.selBtnOnClickListener = new OnClickListener() { @Override public void onClick(android.view.View view) { // TODO Auto-generated method stub if(prevInd != curInd ) { Pref.setMyIntPref((zActivity).getApplicationContext(), Const.SETTING_BASIC+"_UPT_FREQ", curInd); FlurryUtil.logEvent(TAG+":selBtnOnClickListener", Const.SETTING_UPT_FREQ_BTN_TEXT[curInd]); } if(intentBack != null ) intentBack.putExtra(Const.SETTING_BASIC_GROUPS[0]+"_SET", curInd); (zActivity).setResult(android.app.Activity.RESULT_OK, intentBack); (zActivity).finish(); } }; } private class RadioBtn { private int radioBtnId; private int radioBtnTxtId; private String radioBtnTxt; private boolean isChked = false; private int uptDur; } private int LoadRadioBtns(ArrayList<RadioBtn> radioBtns, OnCheckedChangeListener onCheckedChangeListener) { int chkInd = Pref.getMyIntPref(zActivity.getApplicationContext(), Const.SETTING_BASIC+"_UPT_FREQ");; if(chkInd < 0) chkInd = 1; for(int i=0 ; i < Const.SETTING_UPT_FREQ_BTN_TEXT.length; i++) { //Radio Button Structure RadioBtn radioBtn = new RadioBtn(); radioBtn.radioBtnId = Const.SETTING_UPT_FREQ_BTN_ID[i]; radioBtn.radioBtnTxtId = Const.SETTING_UPT_FREQ_BTN_TXT_ID[i]; radioBtn.radioBtnTxt = Const.SETTING_UPT_FREQ_BTN_TEXT[i]; radioBtn.uptDur = Const.SETTING_UPT_FREQ_DURATION[i]; //TextView TextView radioTv = (TextView) zActivity.findViewById(radioBtn.radioBtnTxtId); radioTv.setText(radioBtn.radioBtnTxt); //RadioButton RadioButton rBtn = ((RadioButton)zActivity.findViewById(radioBtn.radioBtnId)); rBtn.setTag(radioBtn); rBtn.setOnCheckedChangeListener(onCheckedChangeListener); if( chkInd == i && rBtn != null) { //chkInd = i; radioBtn.isChked = true; rBtn.setChecked(radioBtn.isChked); } radioBtns.add(radioBtn); } return chkInd; } @Override public int GetSetBtnTxId() { // TODO Auto-generated method stub return R.string.upt_frequency_btn_txt; } @Override public OnClickListener GetSetOnClickListener() { // TODO Auto-generated method stub return this.selBtnOnClickListener; } @Override public int GetTitleId() { // TODO Auto-generated method stub return R.string.upt_frequency_title; } }