List of usage examples for android.widget RadioGroup addView
public void addView(View child)
Adds a child view.
From source file:ru.orangesoftware.financisto2.activity.FlowzrSyncActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); FlowzrSyncActivity.me = this; mNotifyBuilder = new NotificationCompat.Builder(getApplicationContext()); nm = (NotificationManager) getApplicationContext().getSystemService(Context.NOTIFICATION_SERVICE); setContentView(R.layout.flowzr_sync); restoreUIFromPref();/* w w w . j ava 2s . c o m*/ if (useCredential != null) { } AccountManager accountManager = AccountManager.get(getApplicationContext()); final Account[] accounts = accountManager.getAccountsByType("com.google"); if (accounts.length < 1) { new AlertDialog.Builder(this).setTitle(getString(R.string.flowzr_sync_error)) .setMessage(R.string.account_required) .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); finish(); } }).show(); } //radio crendentials RadioGroup radioGroupCredentials = (RadioGroup) findViewById(R.id.radioCredentials); OnClickListener radio_listener = new OnClickListener() { public void onClick(View v) { RadioButton radioButtonSelected = (RadioButton) findViewById(v.getId()); for (Account account : accounts) { if (account.name == radioButtonSelected.getText()) { useCredential = account; } } } }; //initialize value for (int i = 0; i < accounts.length; i++) { RadioButton rb = new RadioButton(this); radioGroupCredentials.addView(rb); //, 0, lp); rb.setOnClickListener(radio_listener); rb.setText(((Account) accounts[i]).name); if (useCredential != null) { if (accounts[i].name.equals(useCredential.name)) { rb.toggle(); //.setChecked(true); } } } bOk = (Button) findViewById(R.id.bOK); bOk.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { setRunning(); initProgressDialog(); // if (useCredential!=null) { // flowzrBilling=new FlowzrBilling(FlowzrSyncActivity.this, getApplicationContext(), http_client, useCredential.toString()); // } if (useCredential == null) { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_choose_account); notifyUser(getString(R.string.flowzr_choose_account), 100); setReady(); } else if (!isOnline(FlowzrSyncActivity.this)) { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_sync_error_no_network); notifyUser(getString(R.string.flowzr_sync_error_no_network), 100); setReady(); } else { saveOptionsFromUI(); //Play Service Billing //FlowzrBilling flowzrBilling = new FlowzrBilling(FlowzrSyncActivity.this, getApplicationContext(), http_client, useCredential.toString()); //if (flowzrSyncTask.checkSubscription()) { flowzrSyncEngine = new FlowzrSyncEngine(FlowzrSyncActivity.this); //} } } }); Button bCancel = (Button) findViewById(R.id.bCancel); bCancel.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { if (flowzrSyncEngine != null) { flowzrSyncEngine.isCanceled = true; } isRunning = false; setResult(RESULT_CANCELED); setReady(); startActivity(new Intent(getApplicationContext(), MainActivity.class)); //finish(); } }); Button textViewAbout = (Button) findViewById(R.id.buySubscription); textViewAbout.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (isOnline(FlowzrSyncActivity.this)) { visitFlowzr(useCredential); } else { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_sync_error_no_network); } } }); Button textViewAboutAnon = (Button) findViewById(R.id.visitFlowzr); textViewAboutAnon.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (isOnline(FlowzrSyncActivity.this)) { visitFlowzr(null); } else { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_sync_error_no_network); } } }); TextView textViewNotes = (TextView) findViewById(R.id.flowzrPleaseNote); textViewNotes.setMovementMethod(LinkMovementMethod.getInstance()); textViewNotes.setText(Html.fromHtml(getString(R.string.flowzr_terms_of_use))); if (MyPreferences.isAutoSync(this)) { if (checkPlayServices()) { gcm = GoogleCloudMessaging.getInstance(this); regid = getRegistrationId(getApplicationContext()); if (regid.equals("")) { registerInBackground(); } Log.i(TAG, "Google Cloud Messaging registered as :" + regid); } else { Log.i(TAG, "No valid Google Play Services APK found."); } } }
From source file:com.google.samples.apps.iosched.videolibrary.VideoLibraryFilteredFragment.java
/** * Generates RadioButton for each item of the {@code values} list and adds them to the * {@code radioGroup}. The item equals to {@code selectedValue} will be checked initially. Items * with special Labels can be added using {@code specialValues}. They will be added on top and * in uppercase characters.//from w ww . j a v a2s . c o m */ private <T extends Comparable> void updateRadioGroup(final RadioGroup radioGroup, List<T> values, T selectedValue, Map<T, String> specialValues) { LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); if (radioGroup == null) { return; } // Add special Values to the list List<T> specialItemsList = new ArrayList<>(specialValues.keySet()); Collections.sort(specialItemsList); for (T keys : specialItemsList) { values.add(0, keys); } radioGroup.removeAllViews(); int idCounter = 0; for (final T value : values) { View buttonLayout = inflater.inflate(R.layout.video_library_filter_radio_button, radioGroup, false); final RadioButton button = (RadioButton) buttonLayout.findViewById(R.id.button); radioGroup.addView(buttonLayout); // Set the Label of the Radio Button. TextView text = (TextView) buttonLayout.findViewById(R.id.text); text.setText(specialValues.get(value) == null ? value.toString() : specialValues.get(value)); // We have to give different IDs to all the RadioButtons inside the RadioGroup so that // only one can be checked at a time. button.setId(idCounter); idCounter++; // Trigger a RadioButton click when clicking the Text. text.setOnClickListener(new View.OnClickListener() { @Override @TargetApi(15) public void onClick(View v) { button.callOnClick(); } }); // When Clicking the RadioButton filter when re-filter the videos. button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { radioGroup.check(button.getId()); onVideoFilterChanged(value); } }); if (selectedValue.equals(value)) { radioGroup.check(button.getId()); } } }
From source file:de.da_sense.moses.client.FormFragment.java
/** * Displays a single choice question to the user. * @param question the question to be displayed * @param linearLayoutInsideAScrollView the view to add the question to * @param ordinal the ordinal number of the question i.e. 1, 2, 3, 4 or 5 *///www . j a v a 2s . co m private void makeSingleChoice(final Question question, LinearLayout linearLayoutInsideAScrollView, int ordinal) { LinearLayout questionContainer = generateQuestionContainer(linearLayoutInsideAScrollView); String questionText = question.getTitle(); List<PossibleAnswer> possibleAnswers = question.getPossibleAnswers(); Collections.sort(possibleAnswers); TextView questionView = new TextView(getActivity()); questionView.setText(ordinal + ". " + questionText); if (question.isMandatory()) questionView.setTextAppearance(getActivity(), R.style.QuestionTextStyleMandatory); else questionView.setTextAppearance(getActivity(), R.style.QuestionTextStyle); questionContainer.addView(questionView); mQuestionTitleMappings.put(question, questionView); final RadioButton[] rb = new RadioButton[possibleAnswers.size()]; RadioGroup rg = new RadioGroup(getActivity()); // create the RadioGroup rg.setOrientation(RadioGroup.VERTICAL);// or RadioGroup.VERTICAL String madeAnswer = question.getAnswer(); int madeAnswerInt = -1; if (!madeAnswer.equals(Question.ANSWER_UNANSWERED)) madeAnswerInt = Integer.parseInt(madeAnswer); for (int i = 0; i < rb.length; i++) { rb[i] = new RadioButton(getActivity()); if (i % 2 == 0) rb[i].setBackgroundColor(getActivity().getResources().getColor(R.color.light_gray)); rg.addView(rb[i]); // the RadioButtons are added to the radioGroup // instead of the layout PossibleAnswer possibleAnswer = possibleAnswers.get(i); rb[i].setText(possibleAnswer.getTitle()); final int possibleAnswerId = possibleAnswer.getId(); if (madeAnswerInt == possibleAnswerId) rb[i].setChecked(true); rb[i].setTextAppearance(getActivity(), R.style.PossibleAnswerTextStyle); LayoutParams rowParam = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); rb[i].setLayoutParams(rowParam); // click handling rb[i].setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { question.setAnswer(String.valueOf(possibleAnswerId)); } }); if (mBelongsTo == WelcomeActivityPagerAdapter.TAB_HISTORY) rb[i].setEnabled(false); rb[i].setVisibility(View.VISIBLE); } rg.setVisibility(View.VISIBLE); if (mBelongsTo == WelcomeActivityPagerAdapter.TAB_HISTORY) rg.setEnabled(false); Log.i(LOG_TAG, "last rg = " + rg); questionContainer.addView(rg); }
From source file:com.aware.ui.ESM_UI.java
@Override public Dialog onCreateDialog(Bundle savedInstanceState) { // getActivity().getWindow().setType(WindowManager.LayoutParams.TYPE_PRIORITY_PHONE); // getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); // getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); // getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON); builder = new AlertDialog.Builder(getActivity()); inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); TAG = Aware.getSetting(getActivity().getApplicationContext(), Aware_Preferences.DEBUG_TAG).length() > 0 ? Aware.getSetting(getActivity().getApplicationContext(), Aware_Preferences.DEBUG_TAG) : TAG;/* w w w. j a v a 2 s . com*/ Cursor visible_esm = getActivity().getContentResolver().query(ESM_Data.CONTENT_URI, null, ESM_Data.STATUS + "=" + ESM.STATUS_NEW, null, ESM_Data.TIMESTAMP + " ASC LIMIT 1"); if (visible_esm != null && visible_esm.moveToFirst()) { esm_id = visible_esm.getInt(visible_esm.getColumnIndex(ESM_Data._ID)); //Fixed: set the esm as not new anymore, to avoid displaying the same ESM twice due to changes in orientation ContentValues update_state = new ContentValues(); update_state.put(ESM_Data.STATUS, ESM.STATUS_VISIBLE); getActivity().getContentResolver().update(ESM_Data.CONTENT_URI, update_state, ESM_Data._ID + "=" + esm_id, null); esm_type = visible_esm.getInt(visible_esm.getColumnIndex(ESM_Data.TYPE)); expires_seconds = visible_esm.getInt(visible_esm.getColumnIndex(ESM_Data.EXPIRATION_THREASHOLD)); builder.setTitle(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.TITLE))); View ui = null; switch (esm_type) { case ESM.TYPE_ESM_TEXT: ui = inflater.inflate(R.layout.esm_text, null); break; case ESM.TYPE_ESM_RADIO: ui = inflater.inflate(R.layout.esm_radio, null); break; case ESM.TYPE_ESM_CHECKBOX: ui = inflater.inflate(R.layout.esm_checkbox, null); break; case ESM.TYPE_ESM_LIKERT: ui = inflater.inflate(R.layout.esm_likert, null); break; case ESM.TYPE_ESM_QUICK_ANSWERS: ui = inflater.inflate(R.layout.esm_quick, null); break; } final View layout = ui; builder.setView(layout); current_dialog = builder.create(); sContext = current_dialog.getContext(); TextView esm_instructions = (TextView) layout.findViewById(R.id.esm_instructions); esm_instructions.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.INSTRUCTIONS))); switch (esm_type) { case ESM.TYPE_ESM_TEXT: final EditText feedback = (EditText) layout.findViewById(R.id.esm_feedback); Button cancel_text = (Button) layout.findViewById(R.id.esm_cancel); cancel_text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { inputManager.hideSoftInputFromWindow(feedback.getWindowToken(), 0); current_dialog.cancel(); } }); Button submit_text = (Button) layout.findViewById(R.id.esm_submit); submit_text.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.SUBMIT))); submit_text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { inputManager.hideSoftInputFromWindow(feedback.getWindowToken(), 0); if (expires_seconds > 0 && expire_monitor != null) expire_monitor.cancel(true); ContentValues rowData = new ContentValues(); rowData.put(ESM_Data.ANSWER_TIMESTAMP, System.currentTimeMillis()); rowData.put(ESM_Data.ANSWER, feedback.getText().toString()); rowData.put(ESM_Data.STATUS, ESM.STATUS_ANSWERED); sContext.getContentResolver().update(ESM_Data.CONTENT_URI, rowData, ESM_Data._ID + "=" + esm_id, null); Intent answer = new Intent(ESM.ACTION_AWARE_ESM_ANSWERED); getActivity().sendBroadcast(answer); if (Aware.DEBUG) Log.d(TAG, "Answer:" + rowData.toString()); current_dialog.dismiss(); } }); break; case ESM.TYPE_ESM_RADIO: try { final RadioGroup radioOptions = (RadioGroup) layout.findViewById(R.id.esm_radio); final JSONArray radios = new JSONArray( visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.RADIOS))); for (int i = 0; i < radios.length(); i++) { final RadioButton radioOption = new RadioButton(getActivity()); radioOption.setId(i); radioOption.setText(radios.getString(i)); radioOptions.addView(radioOption); if (radios.getString(i).equals("Other")) { radioOption.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { final Dialog editOther = new Dialog(getActivity()); editOther.setTitle("Can you be more specific, please?"); editOther.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); editOther.getWindow().setGravity(Gravity.TOP); editOther.getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); LinearLayout editor = new LinearLayout(getActivity()); editor.setOrientation(LinearLayout.VERTICAL); editOther.setContentView(editor); editOther.show(); final EditText otherText = new EditText(getActivity()); editor.addView(otherText); Button confirm = new Button(getActivity()); confirm.setText("OK"); confirm.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (otherText.length() > 0) radioOption.setText(otherText.getText()); inputManager.hideSoftInputFromWindow(otherText.getWindowToken(), 0); editOther.dismiss(); } }); editor.addView(confirm); } }); } } Button cancel_radio = (Button) layout.findViewById(R.id.esm_cancel); cancel_radio.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { current_dialog.cancel(); } }); Button submit_radio = (Button) layout.findViewById(R.id.esm_submit); submit_radio.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.SUBMIT))); submit_radio.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (expires_seconds > 0 && expire_monitor != null) expire_monitor.cancel(true); ContentValues rowData = new ContentValues(); rowData.put(ESM_Data.ANSWER_TIMESTAMP, System.currentTimeMillis()); RadioGroup radioOptions = (RadioGroup) layout.findViewById(R.id.esm_radio); if (radioOptions.getCheckedRadioButtonId() != -1) { RadioButton selected = (RadioButton) radioOptions .getChildAt(radioOptions.getCheckedRadioButtonId()); rowData.put(ESM_Data.ANSWER, selected.getText().toString()); } rowData.put(ESM_Data.STATUS, ESM.STATUS_ANSWERED); sContext.getContentResolver().update(ESM_Data.CONTENT_URI, rowData, ESM_Data._ID + "=" + esm_id, null); Intent answer = new Intent(ESM.ACTION_AWARE_ESM_ANSWERED); getActivity().sendBroadcast(answer); if (Aware.DEBUG) Log.d(TAG, "Answer:" + rowData.toString()); current_dialog.dismiss(); } }); } catch (JSONException e) { e.printStackTrace(); } break; case ESM.TYPE_ESM_CHECKBOX: try { final LinearLayout checkboxes = (LinearLayout) layout.findViewById(R.id.esm_checkboxes); final JSONArray checks = new JSONArray( visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.CHECKBOXES))); for (int i = 0; i < checks.length(); i++) { final CheckBox checked = new CheckBox(getActivity()); checked.setText(checks.getString(i)); checked.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(final CompoundButton buttonView, boolean isChecked) { if (isChecked) { if (buttonView.getText().equals("Other")) { checked.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { final Dialog editOther = new Dialog(getActivity()); editOther.setTitle("Can you be more specific, please?"); editOther.getWindow() .setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); editOther.getWindow().setGravity(Gravity.TOP); editOther.getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); LinearLayout editor = new LinearLayout(getActivity()); editor.setOrientation(LinearLayout.VERTICAL); editOther.setContentView(editor); editOther.show(); final EditText otherText = new EditText(getActivity()); editor.addView(otherText); Button confirm = new Button(getActivity()); confirm.setText("OK"); confirm.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (otherText.length() > 0) { inputManager.hideSoftInputFromWindow( otherText.getWindowToken(), 0); selected_options .remove(buttonView.getText().toString()); checked.setText(otherText.getText()); selected_options.add(otherText.getText().toString()); } editOther.dismiss(); } }); editor.addView(confirm); } }); } else { selected_options.add(buttonView.getText().toString()); } } else { selected_options.remove(buttonView.getText().toString()); } } }); checkboxes.addView(checked); } Button cancel_checkbox = (Button) layout.findViewById(R.id.esm_cancel); cancel_checkbox.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { current_dialog.cancel(); } }); Button submit_checkbox = (Button) layout.findViewById(R.id.esm_submit); submit_checkbox.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.SUBMIT))); submit_checkbox.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (expires_seconds > 0 && expire_monitor != null) expire_monitor.cancel(true); ContentValues rowData = new ContentValues(); rowData.put(ESM_Data.ANSWER_TIMESTAMP, System.currentTimeMillis()); if (selected_options.size() > 0) { rowData.put(ESM_Data.ANSWER, selected_options.toString()); } rowData.put(ESM_Data.STATUS, ESM.STATUS_ANSWERED); sContext.getContentResolver().update(ESM_Data.CONTENT_URI, rowData, ESM_Data._ID + "=" + esm_id, null); Intent answer = new Intent(ESM.ACTION_AWARE_ESM_ANSWERED); getActivity().sendBroadcast(answer); if (Aware.DEBUG) Log.d(TAG, "Answer:" + rowData.toString()); current_dialog.dismiss(); } }); } catch (JSONException e) { e.printStackTrace(); } break; case ESM.TYPE_ESM_LIKERT: final RatingBar ratingBar = (RatingBar) layout.findViewById(R.id.esm_likert); ratingBar.setMax(visible_esm.getInt(visible_esm.getColumnIndex(ESM_Data.LIKERT_MAX))); ratingBar.setStepSize( (float) visible_esm.getDouble(visible_esm.getColumnIndex(ESM_Data.LIKERT_STEP))); ratingBar.setNumStars(visible_esm.getInt(visible_esm.getColumnIndex(ESM_Data.LIKERT_MAX))); TextView min_label = (TextView) layout.findViewById(R.id.esm_min); min_label.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.LIKERT_MIN_LABEL))); TextView max_label = (TextView) layout.findViewById(R.id.esm_max); max_label.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.LIKERT_MAX_LABEL))); Button cancel = (Button) layout.findViewById(R.id.esm_cancel); cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { current_dialog.cancel(); } }); Button submit = (Button) layout.findViewById(R.id.esm_submit); submit.setText(visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.SUBMIT))); submit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (expires_seconds > 0 && expire_monitor != null) expire_monitor.cancel(true); ContentValues rowData = new ContentValues(); rowData.put(ESM_Data.ANSWER_TIMESTAMP, System.currentTimeMillis()); rowData.put(ESM_Data.ANSWER, ratingBar.getRating()); rowData.put(ESM_Data.STATUS, ESM.STATUS_ANSWERED); sContext.getContentResolver().update(ESM_Data.CONTENT_URI, rowData, ESM_Data._ID + "=" + esm_id, null); Intent answer = new Intent(ESM.ACTION_AWARE_ESM_ANSWERED); getActivity().sendBroadcast(answer); if (Aware.DEBUG) Log.d(TAG, "Answer:" + rowData.toString()); current_dialog.dismiss(); } }); break; case ESM.TYPE_ESM_QUICK_ANSWERS: try { final JSONArray answers = new JSONArray( visible_esm.getString(visible_esm.getColumnIndex(ESM_Data.QUICK_ANSWERS))); final LinearLayout answersHolder = (LinearLayout) layout.findViewById(R.id.esm_answers); //If we have more than 3 possibilities, better that the UI is vertical for UX if (answers.length() > 3) { answersHolder.setOrientation(LinearLayout.VERTICAL); } for (int i = 0; i < answers.length(); i++) { final Button answer = new Button(getActivity()); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, 1.0f); answer.setLayoutParams(params); answer.setText(answers.getString(i)); answer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (expires_seconds > 0 && expire_monitor != null) expire_monitor.cancel(true); ContentValues rowData = new ContentValues(); rowData.put(ESM_Data.ANSWER_TIMESTAMP, System.currentTimeMillis()); rowData.put(ESM_Data.STATUS, ESM.STATUS_ANSWERED); rowData.put(ESM_Data.ANSWER, (String) answer.getText()); sContext.getContentResolver().update(ESM_Data.CONTENT_URI, rowData, ESM_Data._ID + "=" + esm_id, null); Intent answer = new Intent(ESM.ACTION_AWARE_ESM_ANSWERED); getActivity().sendBroadcast(answer); if (Aware.DEBUG) Log.d(TAG, "Answer:" + rowData.toString()); current_dialog.dismiss(); } }); answersHolder.addView(answer); } } catch (JSONException e) { e.printStackTrace(); } break; } } if (visible_esm != null && !visible_esm.isClosed()) visible_esm.close(); //Start dialog visibility threshold if (expires_seconds > 0) { expire_monitor = new ESMExpireMonitor(System.currentTimeMillis(), expires_seconds, esm_id); expire_monitor.execute(); } //Fixed: doesn't dismiss the dialog if touched outside or ghost touches current_dialog.setCanceledOnTouchOutside(false); return current_dialog; }
From source file:ru.orangesoftware.financisto.activity.FlowzrSyncActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); FlowzrSyncActivity.me = this; mNotifyBuilder = new NotificationCompat.Builder(getApplicationContext()); nm = (NotificationManager) getApplicationContext().getSystemService(Context.NOTIFICATION_SERVICE); setContentView(R.layout.flowzr_sync); restoreUIFromPref();// w w w . ja va 2 s .c o m AccountManager accountManager = AccountManager.get(getApplicationContext()); final Account[] accounts = accountManager.getAccountsByType("com.google"); if (accounts.length < 1) { new AlertDialog.Builder(this).setTitle(getString(R.string.flowzr_sync_error)) .setMessage(R.string.account_required) .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); finish(); } }).show(); } //checkbox CheckBox chk = (CheckBox) findViewById(R.id.chk_sync_from_zero); OnClickListener chk_listener = new OnClickListener() { public void onClick(View v) { lastSyncLocalTimestamp = 0; renderLastTime(0); flowzrSyncEngine.resetLastTime(getApplicationContext()); } }; chk.setOnClickListener(chk_listener); //radio crendentials RadioGroup radioGroupCredentials = (RadioGroup) findViewById(R.id.radioCredentials); OnClickListener radio_listener = new OnClickListener() { public void onClick(View v) { RadioButton radioButtonSelected = (RadioButton) findViewById(v.getId()); for (Account account : accounts) { if (account.name == radioButtonSelected.getText()) { lastSyncLocalTimestamp = 0; renderLastTime(0); flowzrSyncEngine.resetLastTime(getApplicationContext()); useCredential = account; } } } }; radioGroupCredentials.setOnClickListener(radio_listener); //initialize value for (int i = 0; i < accounts.length; i++) { RadioButton rb = new RadioButton(this); radioGroupCredentials.addView(rb); //, 0, lp); rb.setOnClickListener(radio_listener); rb.setText(((Account) accounts[i]).name); String prefAccount = MyPreferences.getFlowzrAccount(this); if (prefAccount != null) { if (accounts[i].name.equals(prefAccount)) { useCredential = accounts[i]; rb.toggle(); //.setChecked(true); } } } bOk = (Button) findViewById(R.id.bOK); bOk.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { startSync(); } }); Button bCancel = (Button) findViewById(R.id.bCancel); bCancel.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { if (flowzrSyncEngine != null) { flowzrSyncEngine.isCanceled = true; } isRunning = false; setResult(RESULT_CANCELED); setReady(); startActivity(new Intent(getApplicationContext(), MainActivity.class)); //finish(); } }); Button textViewAbout = (Button) findViewById(R.id.buySubscription); textViewAbout.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (isOnline(FlowzrSyncActivity.this)) { visitFlowzr(useCredential); } else { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_sync_error_no_network); } } }); Button textViewAboutAnon = (Button) findViewById(R.id.visitFlowzr); textViewAboutAnon.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (isOnline(FlowzrSyncActivity.this)) { visitFlowzr(null); } else { showErrorPopup(FlowzrSyncActivity.this, R.string.flowzr_sync_error_no_network); } } }); TextView textViewNotes = (TextView) findViewById(R.id.flowzrPleaseNote); textViewNotes.setMovementMethod(LinkMovementMethod.getInstance()); textViewNotes.setText(Html.fromHtml(getString(R.string.flowzr_terms_of_use))); if (MyPreferences.isAutoSync(this)) { if (checkPlayServices()) { gcm = GoogleCloudMessaging.getInstance(this); regid = getRegistrationId(getApplicationContext()); if (regid.equals("")) { registerInBackground(); } Log.i(TAG, "Google Cloud Messaging registered as :" + regid); } else { Log.i(TAG, "No valid Google Play Services APK found."); } } }
From source file:org.onebusaway.android.report.ui.Open311ProblemFragment.java
/** * Dynamically creates radio buttons//from w w w.ja v a2 s .c o m * * @param open311Attribute contains the open311 attributes */ private void createSingleValueList(Open311Attribute open311Attribute) { ArrayList<Object> values = (ArrayList<Object>) open311Attribute.getValues(); if (values != null && values.size() > 0) { LayoutInflater inflater = LayoutInflater.from(getActivity()); RelativeLayout layout = (RelativeLayout) inflater.inflate(R.layout.report_issue_single_value_list_item, null, false); layout.setSaveEnabled(true); ((ImageView) layout.findViewById(R.id.ri_ic_radio)) .setColorFilter(getResources().getColor(R.color.material_gray)); Spannable word = new SpannableString(open311Attribute.getDescription()); ((TextView) layout.findViewById(R.id.risvli_textView)).setText(word); if (open311Attribute.getRequired()) { Spannable wordTwo = new SpannableString(" *Required"); wordTwo.setSpan(new ForegroundColorSpan(Color.RED), 0, wordTwo.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); ((TextView) layout.findViewById(R.id.risvli_textView)).append(wordTwo); } RadioGroup rg = (RadioGroup) layout.findViewById(R.id.risvli_radioGroup); rg.setOrientation(RadioGroup.VERTICAL); // Restore view state from attribute result hash map AttributeValue av = mAttributeValueHashMap.get(open311Attribute.getCode()); String entryValue = null; if (av != null) { entryValue = av.getSingleValue(); } for (int i = 0; i < values.size(); i++) { LinkedHashMap<String, String> value = (LinkedHashMap<String, String>) values.get(i); RadioButton rb = new RadioButton(getActivity()); rg.addView(rb); //the RadioButtons are added to the radioGroup instead of the layout String attributeKey = ""; String attributeValue = ""; for (LinkedHashMap.Entry<String, String> entry : value.entrySet()) { if (Open311Attribute.NAME.equals(entry.getKey())) { rb.setText(entry.getValue()); if (entryValue != null && entryValue.equalsIgnoreCase(entry.getValue())) { rb.setChecked(true); } attributeKey = open311Attribute.getCode() + entry.getValue(); } else if (Open311Attribute.KEY.equals(entry.getKey())) { attributeValue = entry.getValue(); } } mOpen311AttributeKeyNameMap.put(attributeKey, attributeValue); } mInfoLayout.addView(layout); mDynamicAttributeUIMap.put(open311Attribute.getCode(), rg); } }
From source file:reportsas.com.formulapp.Formulario.java
public LinearLayout obtenerLayout(LayoutInflater infla, Pregunta preg) { int id;//from ww w . j a v a 2 s. c om int tipo_pregunta = preg.getTipoPregunta(); LinearLayout pregunta; TextView textView; TextView textAyuda; switch (tipo_pregunta) { case 1: id = R.layout.pregunta_texto; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloPregunta); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); break; case 2: id = R.layout.pregunta_multitexto; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.mtxtTritulo); textAyuda = (TextView) pregunta.findViewById(R.id.mtxtAyuda); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); break; case 3: id = R.layout.pregunta_seleccion; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloSeleccion); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_seleccion); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); RadioGroup rg = (RadioGroup) pregunta.findViewById(R.id.opcionesUnica); ArrayList<OpcionForm> opciones = preg.getOpciones(); final ArrayList<RadioButton> rb = new ArrayList<RadioButton>(); for (int i = 0; i < opciones.size(); i++) { OpcionForm opcion = opciones.get(i); rb.add(new RadioButton(this)); rg.addView(rb.get(i)); rb.get(i).setText(opcion.getEtInicial()); } final TextView respt = (TextView) pregunta.findViewById(R.id.respuestaGruop); rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { int radioButtonID = group.getCheckedRadioButtonId(); RadioButton radioButton = (RadioButton) group.findViewById(radioButtonID); respt.setText(radioButton.getText()); } }); break; case 4: id = R.layout.pregunta_multiple; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloMultiple); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_mltiple); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); ArrayList<OpcionForm> opciones2 = preg.getOpciones(); final EditText ediOtros = new EditText(this); ArrayList<CheckBox> cb = new ArrayList<CheckBox>(); for (int i = 0; i < opciones2.size(); i++) { OpcionForm opcion = opciones2.get(i); cb.add(new CheckBox(this)); pregunta.addView(cb.get(i)); cb.get(i).setText(opcion.getEtInicial()); if (opcion.getEditble().equals("S")) { ediOtros.setEnabled(false); ediOtros.setId(R.id.edtTexto); pregunta.addView(ediOtros); cb.get(i).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { ediOtros.setEnabled(true); } else { ediOtros.setText(""); ediOtros.setEnabled(false); } } }); } } TextView spacio = new TextView(this); spacio.setText(" "); spacio.setVisibility(View.INVISIBLE); pregunta.addView(spacio); break; case 5: id = R.layout.pregunta_escala; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloEscala); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_escala); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); TextView etInicial = (TextView) pregunta.findViewById(R.id.etInicial); TextView etFinal = (TextView) pregunta.findViewById(R.id.etFinal); OpcionForm opci = preg.getOpciones().get(0); etInicial.setText(opci.getEtInicial()); etFinal.setText(opci.getEtFinal()); final TextView respEscala = (TextView) pregunta.findViewById(R.id.seleEscala); RatingBar rtBar = (RatingBar) pregunta.findViewById(R.id.escala); rtBar.setNumStars(Integer.parseInt(opci.getValores().get(0).getDescripcion())); rtBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() { @Override public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { respEscala.setText("" + Math.round(rating)); } }); break; case 6: id = R.layout.pregunta_lista; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloLista); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_lista); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); ArrayList<OpcionForm> opciones3 = preg.getOpciones(); //Creamos la lista LinkedList<ObjetoSpinner> opcn = new LinkedList<ObjetoSpinner>(); //La poblamos con los ejemplos for (int i = 0; i < opciones3.size(); i++) { opcn.add(new ObjetoSpinner(opciones3.get(i).getIdOpcion(), opciones3.get(i).getEtInicial())); } //Creamos el adaptador*/ Spinner listad = (Spinner) pregunta.findViewById(R.id.opcionesListado); ArrayAdapter<ObjetoSpinner> spinner_adapter = new ArrayAdapter<ObjetoSpinner>(this, android.R.layout.simple_spinner_item, opcn); //Aadimos el layout para el men y se lo damos al spinner spinner_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); listad.setAdapter(spinner_adapter); break; case 7: id = R.layout.pregunta_tabla; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloTabla); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_tabla); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); TableLayout tba = (TableLayout) pregunta.findViewById(R.id.tablaOpciones); ArrayList<OpcionForm> opciones4 = preg.getOpciones(); ArrayList<RadioButton> radiosbotonoes = new ArrayList<RadioButton>(); for (int i = 0; i < opciones4.size(); i++) { TableRow row = (TableRow) LayoutInflater.from(this).inflate(R.layout.row_pregunta_tabla, null); RadioGroup tg_valores = (RadioGroup) row.findViewById(R.id.valoresRow); final ArrayList<RadioButton> valoOpc = new ArrayList<RadioButton>(); ArrayList<Valor> valoresT = opciones4.get(i).getValores(); for (int k = 0; k < valoresT.size(); k++) { RadioButton rb_nuevo = new RadioButton(this); rb_nuevo.setText(valoresT.get(k).getDescripcion()); tg_valores.addView(rb_nuevo); valoOpc.add(rb_nuevo); } ((TextView) row.findViewById(R.id.textoRow)).setText(opciones4.get(i).getEtInicial()); tba.addView(row); } TextView espacio = new TextView(this); espacio.setText(" "); pregunta.addView(espacio); break; case 8: id = R.layout.pregunta_fecha; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloFecha); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_fecha); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); break; case 9: id = R.layout.pregunta_hora; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloHora); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_hora); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); break; default: id = R.layout.pregunta_multiple; pregunta = (LinearLayout) infla.inflate(id, null, false); textView = (TextView) pregunta.findViewById(R.id.TituloMultiple); textAyuda = (TextView) pregunta.findViewById(R.id.texto_ayuda_mltiple); textView.setText(preg.getOrden() + ". " + preg.getTitulo()); textAyuda.setText(preg.getTxtAyuda()); break; } return pregunta; }
From source file:usbong.android.utils.UsbongScreenProcessor.java
public void init() { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 Resources myRes = udtea.getResources(); Drawable myDrawableImage;/*from w ww .j a va2 s . co m*/ //added by Mike, Feb. 13, 2013 udtea.isAnOptionalNode = UsbongUtils.isAnOptionalNode(udtea.currUsbongNode); String myStringToken = ""; // if (usedBackButton) { // System.out.println(">>>>>> udtea.currAnswer: "+udtea.currAnswer); StringTokenizer st = new StringTokenizer(udtea.currAnswer, ","); if ((st != null) && (st.hasMoreTokens())) { myStringToken = st.nextToken(); udtea.currAnswer = udtea.currAnswer.replace(myStringToken + ",", ""); } StringTokenizer st_two = new StringTokenizer(udtea.currAnswer, ";"); if (st_two != null) { if (udtea.currAnswer.length() > 1) { myStringToken = st_two.nextToken(); //get next element (i.e. 1 in "Y,1;") } else { myStringToken = ""; } } if (udtea.currScreen == udtea.MULTIPLE_RADIO_BUTTONS_SCREEN) { udtea.setContentView(R.layout.multiple_radio_buttons_screen); udtea.initBackNextButtons(); TextView myMultipleRadioButtonsScreenTextView = (TextView) udtea .findViewById(R.id.radio_buttons_textview); myMultipleRadioButtonsScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myMultipleRadioButtonsScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); RadioGroup radioGroup = (RadioGroup) udtea.findViewById(R.id.multiple_radio_buttons_radiogroup); int totalRadioButtonsInContainer = udtea.radioButtonsContainer.size(); for (int i = 0; i < totalRadioButtonsInContainer; i++) { View radioButtonView = new RadioButton(udtea.getBaseContext()); RadioButton radioButton = (RadioButton) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), radioButtonView, UsbongUtils.IS_RADIOBUTTON, udtea.radioButtonsContainer.elementAt(i).toString()); radioButton.setTextSize(20); radioButton.setId(i); radioButton.setTextColor(Color.parseColor("#4a452a")); int myStringTokenInt; try { myStringTokenInt = Integer.parseInt(myStringToken); } catch (NumberFormatException e) {//if myStringToken is not an int; myStringTokenInt = -1; } if ((!myStringToken.equals("")) && (i == myStringTokenInt)) { radioButton.setChecked(true); } else { radioButton.setChecked(false); } radioGroup.addView(radioButton); } } else if (udtea.currScreen == udtea.MULTIPLE_RADIO_BUTTONS_WITH_ANSWER_SCREEN) { udtea.setContentView(R.layout.multiple_radio_buttons_screen); udtea.initBackNextButtons(); String myMultipleRadioButtonsWithAnswerScreenStringToken = ""; // Log.d(">>>>>>>>udtea.currUsbongNode", udtea.currUsbongNode); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNode.replace("Answer=", "~"); StringTokenizer myMultipleRadioButtonsWithAnswerScreenStringTokenizer = new StringTokenizer( udtea.currUsbongNodeWithoutAnswer, "~"); if (myMultipleRadioButtonsWithAnswerScreenStringTokenizer != null) { myMultipleRadioButtonsWithAnswerScreenStringToken = myMultipleRadioButtonsWithAnswerScreenStringTokenizer .nextToken(); while (myMultipleRadioButtonsWithAnswerScreenStringTokenizer.hasMoreTokens()) { //get last element (i.e. 0 in "radioButtonsWithAnswer~You see your teacher approaching you. What do you do?Answer=0") myMultipleRadioButtonsWithAnswerScreenStringToken = myMultipleRadioButtonsWithAnswerScreenStringTokenizer .nextToken(); } } udtea.myMultipleRadioButtonsWithAnswerScreenAnswer = myMultipleRadioButtonsWithAnswerScreenStringToken .toString(); // Log.d(">>>>>>>>udtea.myMultipleRadioButtonsWithAnswerScreenAnswer", udtea.myMultipleRadioButtonsWithAnswerScreenAnswer); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNodeWithoutAnswer.substring(0, udtea.currUsbongNodeWithoutAnswer.length() - udtea.myMultipleRadioButtonsWithAnswerScreenAnswer.length() - 1); //do a -1 for the last tilde // Log.d(">>>>>>>>udtea.currUsbongNodeWithoutAnswer", udtea.currUsbongNodeWithoutAnswer); TextView myMultipleRadioButtonsWithAnswerScreenTextView = (TextView) udtea .findViewById(R.id.radio_buttons_textview); myMultipleRadioButtonsWithAnswerScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myMultipleRadioButtonsWithAnswerScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNodeWithoutAnswer); RadioGroup myMultipleRadioButtonsWithAnswerRadioGroup = (RadioGroup) udtea .findViewById(R.id.multiple_radio_buttons_radiogroup); int myMultipleRadioButtonsWithAnswerTotalRadioButtonsInContainer = udtea.radioButtonsContainer.size(); for (int i = 0; i < myMultipleRadioButtonsWithAnswerTotalRadioButtonsInContainer; i++) { View radioButtonView = new RadioButton(udtea.getBaseContext()); RadioButton radioButton = (RadioButton) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), radioButtonView, UsbongUtils.IS_RADIOBUTTON, udtea.radioButtonsContainer.elementAt(i).toString()); radioButton.setTextSize(20); radioButton.setId(i); radioButton.setTextColor(Color.parseColor("#4a452a")); if ((!myStringToken.equals("")) && (i == Integer.parseInt(myStringToken))) { radioButton.setChecked(true); } else { radioButton.setChecked(false); } myMultipleRadioButtonsWithAnswerRadioGroup.addView(radioButton); } } else if (udtea.currScreen == udtea.LINK_SCREEN) { //use same contentView as multiple_radio_buttons_screen udtea.setContentView(R.layout.multiple_radio_buttons_screen); udtea.initBackNextButtons(); TextView myLinkScreenTextView = (TextView) udtea.findViewById(R.id.radio_buttons_textview); myLinkScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myLinkScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); RadioGroup myLinkScreenRadioGroup = (RadioGroup) udtea .findViewById(R.id.multiple_radio_buttons_radiogroup); int myLinkScreenTotalRadioButtonsInContainer = udtea.radioButtonsContainer.size(); for (int i = 0; i < myLinkScreenTotalRadioButtonsInContainer; i++) { View radioButtonView = new RadioButton(udtea.getBaseContext()); RadioButton radioButton = (RadioButton) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), radioButtonView, UsbongUtils.IS_RADIOBUTTON, UsbongUtils.trimUsbongNodeName(udtea.radioButtonsContainer.elementAt(i).toString())); Log.d(">>>>>radioButton", radioButton.getText().toString()); // radioButton.setChecked(false); radioButton.setTextSize(20); radioButton.setId(i); radioButton.setTextColor(Color.parseColor("#4a452a")); if ((!myStringToken.equals("")) && (i == Integer.parseInt(myStringToken))) { radioButton.setChecked(true); } else { radioButton.setChecked(false); } myLinkScreenRadioGroup.addView(radioButton); } } else if (udtea.currScreen == udtea.MULTIPLE_CHECKBOXES_SCREEN) { udtea.setContentView(R.layout.multiple_checkboxes_screen); udtea.initBackNextButtons(); TextView myMultipleCheckBoxesScreenTextView = (TextView) udtea.findViewById(R.id.checkboxes_textview); myMultipleCheckBoxesScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myMultipleCheckBoxesScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); LinearLayout myMultipleCheckboxesLinearLayout = (LinearLayout) udtea .findViewById(R.id.multiple_checkboxes_linearlayout); int totalCheckBoxesInContainer = udtea.checkBoxesContainer.size(); StringTokenizer myMultipleCheckboxStringTokenizer = new StringTokenizer(myStringToken, ","); Vector<String> myCheckedAnswers = new Vector<String>(); // int counter=0; while (myMultipleCheckboxStringTokenizer.countTokens() > 0) { String myMultipleCheckboxStringToken = myMultipleCheckboxStringTokenizer.nextToken(); if (myMultipleCheckboxStringToken != null) { myCheckedAnswers.add(myMultipleCheckboxStringToken); } else { break; } // counter++; } for (int i = 0; i < totalCheckBoxesInContainer; i++) { CheckBox checkBox = new CheckBox(udtea.getBaseContext()); // checkBox.setText(StringEscapeUtils.unescapeJava(udtea.checkBoxesContainer.elementAt(i).toString())); checkBox = (CheckBox) UsbongUtils.applyTagsInView(UsbongDecisionTreeEngineActivity.getInstance(), checkBox, UsbongUtils.IS_CHECKBOX, StringEscapeUtils.unescapeJava(udtea.checkBoxesContainer.elementAt(i).toString())); for (int k = 0; k < myCheckedAnswers.size(); k++) { try { if (i == Integer.parseInt(myCheckedAnswers.elementAt(k))) { checkBox.setChecked(true); } } catch (NumberFormatException e) {//if myCheckedAnswers.elementAt(k) is not an int; continue; } } checkBox.setTextSize(20); checkBox.setTextColor(Color.parseColor("#4a452a")); myMultipleCheckboxesLinearLayout.addView(checkBox); } } else if (udtea.currScreen == udtea.AUDIO_RECORD_SCREEN) { udtea.setContentView(R.layout.audio_recorder_screen); udtea.initRecordAudioScreen(); udtea.initBackNextButtons(); TextView myAudioRecorderTextView = (TextView) udtea.findViewById(R.id.audio_recorder_textview); myAudioRecorderTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myAudioRecorderTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); Button recordButton = (Button) udtea.findViewById(R.id.record_button); Button stopButton = (Button) udtea.findViewById(R.id.stop_button); Button playButton = (Button) udtea.findViewById(R.id.play_button); if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { recordButton.setText((String) udtea.getResources().getText(R.string.UsbongRecordTextViewFILIPINO)); stopButton.setText((String) udtea.getResources().getText(R.string.UsbongStopTextViewFILIPINO)); playButton.setText((String) udtea.getResources().getText(R.string.UsbongPlayTextViewFILIPINO)); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { recordButton.setText((String) udtea.getResources().getText(R.string.UsbongRecordTextViewJAPANESE)); stopButton.setText((String) udtea.getResources().getText(R.string.UsbongStopTextViewJAPANESE)); playButton.setText((String) udtea.getResources().getText(R.string.UsbongPlayTextViewJAPANESE)); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { recordButton.setText((String) udtea.getResources().getText(R.string.UsbongRecordTextViewENGLISH)); stopButton.setText((String) udtea.getResources().getText(R.string.UsbongStopTextViewENGLISH)); playButton.setText((String) udtea.getResources().getText(R.string.UsbongPlayTextViewENGLISH)); } } else if (udtea.currScreen == udtea.PHOTO_CAPTURE_SCREEN) { udtea.setContentView(R.layout.photo_capture_screen); if (!udtea.performedCapturePhoto) { udtea.initTakePhotoScreen(); } udtea.initBackNextButtons(); TextView myPhotoCaptureScreenTextView = (TextView) udtea.findViewById(R.id.photo_capture_textview); myPhotoCaptureScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myPhotoCaptureScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); Button photoCaptureButton = (Button) udtea.findViewById(R.id.photo_capture_button); if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { photoCaptureButton .setText((String) udtea.getResources().getText(R.string.UsbongTakePhotoTextViewFILIPINO)); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { photoCaptureButton .setText((String) udtea.getResources().getText(R.string.UsbongTakePhotoTextViewJAPANESE)); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { photoCaptureButton .setText((String) udtea.getResources().getText(R.string.UsbongTakePhotoTextViewENGLISH)); } } else if (udtea.currScreen == udtea.PAINT_SCREEN) { udtea.setContentView(R.layout.paint_screen); if (!udtea.performedRunPaint) { udtea.initPaintScreen(); } udtea.initBackNextButtons(); TextView myPaintScreenTextView = (TextView) udtea.findViewById(R.id.paint_textview); myPaintScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myPaintScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); Button paintButton = (Button) udtea.findViewById(R.id.paint_button); if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { paintButton.setText((String) udtea.getResources().getText(R.string.UsbongRunPaintTextViewFILIPINO)); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { paintButton.setText((String) udtea.getResources().getText(R.string.UsbongRunPaintTextViewJAPANESE)); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { paintButton.setText((String) udtea.getResources().getText(R.string.UsbongRunPaintTextViewENGLISH)); } } else if (udtea.currScreen == udtea.QR_CODE_READER_SCREEN) { udtea.setContentView(R.layout.qr_code_reader_screen); if (!udtea.performedGetQRCode) { udtea.initQRCodeReaderScreen(); } udtea.initBackNextButtons(); TextView myQRCodeReaderScreenTextView = (TextView) udtea.findViewById(R.id.qr_code_reader_textview); myQRCodeReaderScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myQRCodeReaderScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); Button qrCodeReaderButton = (Button) udtea.findViewById(R.id.qr_code_reader_button); if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { qrCodeReaderButton.setText( (String) udtea.getResources().getText(R.string.UsbongQRCodeReaderTextViewFILIPINO)); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { qrCodeReaderButton.setText( (String) udtea.getResources().getText(R.string.UsbongQRCodeReaderTextViewJAPANESE)); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { qrCodeReaderButton .setText((String) udtea.getResources().getText(R.string.UsbongQRCodeReaderTextViewENGLISH)); } } else if (udtea.currScreen == udtea.TEXTFIELD_SCREEN) { udtea.setContentView(R.layout.textfield_screen); udtea.initBackNextButtons(); TextView myTextFieldScreenTextView = (TextView) udtea.findViewById(R.id.textfield_textview); myTextFieldScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextFieldScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); EditText myTextFieldScreenEditText = (EditText) udtea.findViewById(R.id.textfield_edittext); myTextFieldScreenEditText.setText(myStringToken); } else if (udtea.currScreen == udtea.TEXTFIELD_WITH_ANSWER_SCREEN) { udtea.setContentView(R.layout.textfield_screen); udtea.initBackNextButtons(); String myTextFieldWithAnswerScreenStringToken = ""; // Log.d(">>>>>>>>udtea.currUsbongNode", udtea.currUsbongNode); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNode.replace("Answer=", "~"); StringTokenizer myTextFieldWithAnswerScreenStringTokenizer = new StringTokenizer( udtea.currUsbongNodeWithoutAnswer, "~"); if (myTextFieldWithAnswerScreenStringTokenizer != null) { myTextFieldWithAnswerScreenStringToken = myTextFieldWithAnswerScreenStringTokenizer.nextToken(); while (myTextFieldWithAnswerScreenStringTokenizer.hasMoreTokens()) { //get last element (i.e. Mike in "textFieldWithAnswer~Who is the founder of Usbong (nickname)?Answer=Mike") myTextFieldWithAnswerScreenStringToken = myTextFieldWithAnswerScreenStringTokenizer.nextToken(); } } udtea.myTextFieldWithAnswerScreenAnswer = myTextFieldWithAnswerScreenStringToken.toString(); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNodeWithoutAnswer.substring(0, udtea.currUsbongNodeWithoutAnswer.length() - udtea.myTextFieldWithAnswerScreenAnswer.length() - 1); //do a -1 for the last tilde TextView myTextFieldWithAnswerScreenTextView = (TextView) udtea.findViewById(R.id.textfield_textview); myTextFieldWithAnswerScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextFieldWithAnswerScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNodeWithoutAnswer); EditText myTextFieldScreenWithAnswerEditText = (EditText) udtea.findViewById(R.id.textfield_edittext); myTextFieldScreenWithAnswerEditText.setText(myStringToken); } else if (udtea.currScreen == udtea.TEXTAREA_SCREEN) { udtea.setContentView(R.layout.textarea_screen); udtea.initBackNextButtons(); TextView myTextAreaScreenTextView = (TextView) udtea.findViewById(R.id.textarea_textview); myTextAreaScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextAreaScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); EditText myTextAreaScreenEditText = (EditText) udtea.findViewById(R.id.textarea_edittext); myTextAreaScreenEditText.setText(myStringToken); } else if (udtea.currScreen == udtea.TEXTAREA_WITH_ANSWER_SCREEN) { udtea.setContentView(R.layout.textarea_screen); udtea.initBackNextButtons(); String myTextAreaWithAnswerScreenStringToken = ""; // Log.d(">>>>>>>>udtea.currUsbongNode", udtea.currUsbongNode); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNode.replace("Answer=", "~"); StringTokenizer myTextAreaWithAnswerScreenStringTokenizer = new StringTokenizer( udtea.currUsbongNodeWithoutAnswer, "~"); if (myTextAreaWithAnswerScreenStringTokenizer != null) { myTextAreaWithAnswerScreenStringToken = myTextAreaWithAnswerScreenStringTokenizer.nextToken(); while (myTextAreaWithAnswerScreenStringTokenizer.hasMoreTokens()) { //get last element (i.e. Mike in "textFieldWithAnswer~Who is the founder of Usbong (nickname)?Answer=Mike") myTextAreaWithAnswerScreenStringToken = myTextAreaWithAnswerScreenStringTokenizer.nextToken(); } } udtea.myTextAreaWithAnswerScreenAnswer = myTextAreaWithAnswerScreenStringToken.toString(); udtea.currUsbongNodeWithoutAnswer = udtea.currUsbongNodeWithoutAnswer.substring(0, udtea.currUsbongNodeWithoutAnswer.length() - udtea.myTextAreaWithAnswerScreenAnswer.length() - 1); //do a -1 for the last tilde TextView myTextAreaWithAnswerScreenTextView = (TextView) udtea.findViewById(R.id.textarea_textview); myTextAreaWithAnswerScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextAreaWithAnswerScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNodeWithoutAnswer); EditText myTextAreaScreenWithAnswerEditText = (EditText) udtea.findViewById(R.id.textarea_edittext); myTextAreaScreenWithAnswerEditText.setText(myStringToken); } else if (udtea.currScreen == udtea.TEXTFIELD_WITH_UNIT_SCREEN) { udtea.setContentView(R.layout.textfield_with_unit_screen); udtea.initBackNextButtons(); TextView myTextFieldWithUnitScreenTextView = (TextView) udtea.findViewById(R.id.textfield_textview); myTextFieldWithUnitScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextFieldWithUnitScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); EditText myEditText = (EditText) udtea.findViewById(R.id.textfield_edittext); myEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); myEditText.setText(myStringToken); TextView myUnitScreenTextView = (TextView) udtea.findViewById(R.id.textfieldunit_textview); myUnitScreenTextView.setText(udtea.textFieldUnit); } else if (udtea.currScreen == udtea.TEXTFIELD_NUMERICAL_SCREEN) { udtea.setContentView(R.layout.textfield_screen); udtea.initBackNextButtons(); TextView myTextFieldNumericalScreenTextView = (TextView) udtea.findViewById(R.id.textfield_textview); myTextFieldNumericalScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextFieldNumericalScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); EditText myTextFieldNumericalScreenEditText = (EditText) udtea.findViewById(R.id.textfield_edittext); myTextFieldNumericalScreenEditText .setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); myTextFieldNumericalScreenEditText.setText(myStringToken); } else if (udtea.currScreen == udtea.CLASSIFICATION_SCREEN) { udtea.setContentView(R.layout.classification_screen); udtea.initBackNextButtons(); TextView myClassificationScreenTextView = (TextView) udtea.findViewById(R.id.classification_textview); myClassificationScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myClassificationScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); LinearLayout myClassificationLinearLayout = (LinearLayout) udtea .findViewById(R.id.classification_linearlayout); int totalClassificationsInContainer = udtea.classificationContainer.size(); for (int i = 0; i < totalClassificationsInContainer; i++) { TextView myTextView = new TextView(udtea.getBaseContext()); //consider removing this code below; not needed; Mike, May 23, 2013 myTextView = (TextView) UsbongUtils.applyTagsInView(UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); int bulletCount = i + 1; if (UsbongUtils.USE_UNESCAPE) { myTextView.setText(bulletCount + ") " + StringEscapeUtils .unescapeJava(udtea.classificationContainer.elementAt(i).toString())); } else { myTextView.setText(bulletCount + ") " + UsbongUtils .trimUsbongNodeName(udtea.classificationContainer.elementAt(i).toString())); } //add 5 so that the text does not touch the left border myTextView.setPadding(udtea.padding_in_px, 0, 0, 0); myTextView.setTextSize(24); // myTextView.setTextColor(Color.WHITE); myTextView.setTextColor(Color.parseColor("#4a452a")); myClassificationLinearLayout.addView(myTextView); } } else if (udtea.currScreen == udtea.DCAT_SUMMARY_SCREEN) { udtea.setContentView(R.layout.dcat_summary_screen); udtea.initBackNextButtons(); TextView myDCATSummaryScreenTextView = (TextView) udtea.findViewById(R.id.dcat_summary_textview); myDCATSummaryScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myDCATSummaryScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); udtea.myDcatSummaryStringBuffer = new StringBuffer(); String weightsString = "1.9;2.1;2.6;1.8;2.4;1.8;.7;1.0;1.6;2.6;6.9;5.7;3.3;2.2;3.3;3.3;2;2;1.7;1.9;3.9;1.3;2.5;.8"; StringTokenizer myWeightsStringTokenizer = new StringTokenizer(weightsString, ";"); String myWeightString = myWeightsStringTokenizer.nextToken(); // // while (st.hasMoreTokens()) { // myStringToken = st.nextToken(); // } // double myWeightedScoreInt = 0; double myNegotiatedWeightedScoreInt = 0; double[][] dcatSum = new double[8][4]; final int sumWeightedRatingIndex = 0; final int sumWeightedScoreIndex = 1; final int sumNegotiatedRatingIndex = 2; final int sumNegotiatedScoreIndex = 3; int currStandard = 0;//standard 1 // boolean hasReachedNegotiated=false; boolean hasReachedStandardTotal = false; LinearLayout myDCATSummaryLinearLayout = (LinearLayout) udtea .findViewById(R.id.dcat_summary_linearlayout); int totalElementsInDCATSummaryBasedOnUsbongNodeContainer = udtea.usbongNodeContainer.size(); // for (int i=0; i<totalElementsInDCATSummaryBasedOnUsbongNodeContainer.usbongNodeContainer; i++) { for (int i = 0; i < totalElementsInDCATSummaryBasedOnUsbongNodeContainer; i++) { TextView myTextView = new TextView(udtea.getBaseContext()); myTextView.setPadding(udtea.padding_in_px, 0, 0, 0); //add 5 so that the text does not touch the left border myTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 24); myTextView.setTextColor(Color.parseColor("#4a452a")); //the only way to check if the element is already the last item in the standard //is if the next element in the node container has "STANDARD", but not the first standard if ((i + 1 >= totalElementsInDCATSummaryBasedOnUsbongNodeContainer) || (i + 1 < totalElementsInDCATSummaryBasedOnUsbongNodeContainer) && ((udtea.usbongNodeContainer.elementAt(i + 1).toString().contains("STANDARD"))) && (!(udtea.usbongNodeContainer.elementAt(i + 1).toString().contains("STANDARD ONE")))) { int tempCurrStandard = currStandard + 1; //do a +1 since currStandard begins at 0 TextView myIssuesTextView = new TextView(udtea.getBaseContext()); //added by Mike, May 31, 2013 if (!udtea.usbongAnswerContainer.elementAt(i).toString().contains("dcat_end,")) { String s = udtea.usbongAnswerContainer.elementAt(i).toString().replace(";", ""); s = s.replace("A,", ""); if (!s.equals("")) { myIssuesTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myIssuesTextView, UsbongUtils.IS_TEXTVIEW, "ISSUES: " + s + "{br}"); } else { myIssuesTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myIssuesTextView, UsbongUtils.IS_TEXTVIEW, "ISSUES: none{br}"); } myIssuesTextView.setPadding(udtea.padding_in_px, 0, 0, 0); //add 5 so that the text does not touch the left border myIssuesTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 24); myIssuesTextView.setTextColor(Color.parseColor("#4a452a")); myDCATSummaryLinearLayout.addView(myIssuesTextView); udtea.myDcatSummaryStringBuffer.append(myIssuesTextView.getText().toString() + "\n"); } if (myWeightsStringTokenizer.hasMoreElements()) { //get the next weight myWeightString = myWeightsStringTokenizer.nextToken(); } myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, "//--------------------" + " STANDARD " + tempCurrStandard + " (TOTAL){br}" + "Total (Rating): " + String.format("%.2f", dcatSum[currStandard][sumWeightedRatingIndex]) + "{br}" + "Total (Weighted Score): " + String.format("%.2f", dcatSum[currStandard][sumWeightedScoreIndex]) + "{br}" + "Total (Negotiated Rating): " + String.format("%.2f", dcatSum[currStandard][sumNegotiatedRatingIndex]) + "{br}" + "Total (Negotiated WS): " + String.format("%.2f", dcatSum[currStandard][sumNegotiatedScoreIndex]) + "{br}" + "//--------------------"); hasReachedStandardTotal = true; currStandard++; } if (hasReachedStandardTotal) { hasReachedStandardTotal = false; } else if (udtea.usbongNodeContainer.elementAt(i).toString().contains("ISSUES")) { String s = udtea.usbongAnswerContainer.elementAt(i).toString().replace(";", ""); s = s.replace("A,", ""); if (!s.equals("")) { myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, "ISSUES: " + s + "{br}"); } else { myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, "ISSUES: none{br}"); } if (myWeightsStringTokenizer.hasMoreElements()) { //get the next weight myWeightString = myWeightsStringTokenizer.nextToken(); } } else if (udtea.usbongNodeContainer.elementAt(i).toString().contains("Weighted")) { TextView myWeightedTextView = new TextView(udtea.getBaseContext()); myWeightedTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myWeightedTextView, UsbongUtils.IS_TEXTVIEW, udtea.usbongNodeContainer.elementAt(i).toString().replace("{br}(Weighted Score)", "")); myWeightedTextView.setPadding(udtea.padding_in_px, 0, 0, 0); //add 5 so that the text does not touch the left border myWeightedTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 24); myWeightedTextView.setTextColor(Color.parseColor("#4a452a")); myDCATSummaryLinearLayout.addView(myWeightedTextView); udtea.myDcatSummaryStringBuffer.append(myWeightedTextView.getText().toString() + "\n"); int weightedAnswer; //added by Mike, July 8, 2013 try { weightedAnswer = Integer .parseInt(udtea.usbongAnswerContainer.elementAt(i).toString().replace(";", "")); } catch (Exception e) { //if there's no answer selected weightedAnswer = 0; } if (weightedAnswer <= 0) { weightedAnswer = 0; } //the weight is in double myWeightedScoreInt = weightedAnswer * Double.parseDouble(myWeightString); if (myWeightedScoreInt <= 0) { myWeightedScoreInt = 0; myTextView.setBackgroundColor(Color.YELLOW); } dcatSum[currStandard][sumWeightedRatingIndex] += weightedAnswer; dcatSum[currStandard][sumWeightedScoreIndex] += myWeightedScoreInt; myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, "Weighted: " + myWeightedScoreInt); } else if (udtea.usbongNodeContainer.elementAt(i).toString().contains("Negotiated")) { //added by Mike, July 8, 2013 int negotiatedAnswer; try { negotiatedAnswer = Integer .parseInt(udtea.usbongAnswerContainer.elementAt(i).toString().replace(";", "")); } catch (Exception e) { //if there's no answer selected negotiatedAnswer = 0; } if (negotiatedAnswer <= 0) { negotiatedAnswer = 0; } //the weight is in double myNegotiatedWeightedScoreInt = negotiatedAnswer * Double.parseDouble(myWeightString); if (myNegotiatedWeightedScoreInt <= 0) { myNegotiatedWeightedScoreInt = 0; myTextView.setBackgroundColor(Color.YELLOW); } dcatSum[currStandard][sumNegotiatedRatingIndex] += negotiatedAnswer; dcatSum[currStandard][sumNegotiatedScoreIndex] += myNegotiatedWeightedScoreInt; myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, "Negotiated: " + myNegotiatedWeightedScoreInt); // hasReachedNegotiated=true; } else { myTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextView, UsbongUtils.IS_TEXTVIEW, udtea.usbongNodeContainer.elementAt(i).toString() + "{br}"); } // if (!hasReachedStandardTotal) { myDCATSummaryLinearLayout.addView(myTextView); udtea.myDcatSummaryStringBuffer.append(myTextView.getText().toString() + "\n"); Log.d(">>>>>myTextView.getText().toString()", myTextView.getText().toString()); // } // else { // hasReachedStandardTotal=false; // } } } else if (udtea.currScreen == udtea.DATE_SCREEN) { udtea.setContentView(R.layout.date_screen); udtea.initBackNextButtons(); TextView myDateScreenTextView = (TextView) udtea.findViewById(R.id.date_textview); myDateScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myDateScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); //Reference: http://code.google.com/p/android/issues/detail?id=2037 //last accessed: 21 Aug. 2012 Configuration userConfig = new Configuration(); Settings.System.getConfiguration(udtea.getContentResolver(), userConfig); Calendar date = Calendar.getInstance(userConfig.locale); //Reference: http://www.androidpeople.com/android-spinner-default-value; //last accessed: 21 Aug. 2012 //month------------------------------- int month = date.get(Calendar.MONTH); //first month of the year is 0 Spinner dateMonthSpinner = (Spinner) udtea.findViewById(R.id.date_month_spinner); udtea.monthAdapter = ArrayAdapter.createFromResource(((Activity) udtea), R.array.months_array, android.R.layout.simple_spinner_item); // udtea.monthAdapter = ArrayAdapter.createFromResource( // this, R.array.months_array, R.layout.date_textview); udtea.monthAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); dateMonthSpinner.setAdapter(udtea.monthAdapter); dateMonthSpinner.setSelection(month); // System.out.println(">>>>>>>>>>>>>> month"+month); // Log.d(">>>>>>myStringToken",myStringToken); for (int i = 0; i < udtea.monthAdapter.getCount(); i++) { // Log.d(">>>>>>udtea.monthAdapter ",udtea.monthAdapter .getItem(i).toString()); if (myStringToken.contains(udtea.monthAdapter.getItem(i).toString())) { dateMonthSpinner.setSelection(i); //added by Mike, March 4, 2013 myStringToken = myStringToken.replace(udtea.monthAdapter.getItem(i).toString(), ""); } } //------------------------------------- //day---------------------------------- //Reference: http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Calendar.html#MONTH //last accessed: 21 Aug 2012 int day = date.get(Calendar.DAY_OF_MONTH); //first day of the month is 1 day = day - 1; //do this to offset, when retrieving the day in strings.xml Spinner dateDaySpinner = (Spinner) udtea.findViewById(R.id.date_day_spinner); udtea.dayAdapter = ArrayAdapter.createFromResource(((Activity) udtea), R.array.day_array, android.R.layout.simple_spinner_item); udtea.dayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); dateDaySpinner.setAdapter(udtea.dayAdapter); dateDaySpinner.setSelection(day); // System.out.println(">>>>>>>>>>>>>> day"+day); // Log.d(">>>>>myStringToken",myStringToken); // System.out.println(">>>>>>>> myStringToken"+myStringToken); StringTokenizer myDateStringTokenizer = new StringTokenizer(myStringToken, ","); String myDayStringToken = ""; if (!myStringToken.equals("")) { myDayStringToken = myDateStringTokenizer.nextToken(); } for (int i = 0; i < udtea.dayAdapter.getCount(); i++) { if (myDayStringToken.contains(udtea.dayAdapter.getItem(i).toString())) { dateDaySpinner.setSelection(i); myStringToken = myStringToken.replace(udtea.dayAdapter.getItem(i).toString() + ",", ""); // System.out.println(">>>>>>>>>>>myStringToken: "+myStringToken); } } //------------------------------------- //year--------------------------------- int year = date.get(Calendar.YEAR); EditText myDateYearEditText = (EditText) udtea.findViewById(R.id.date_edittext); myDateYearEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); //added by Mike, March 4, 2013 if (myStringToken.equals("")) { myDateYearEditText.setText("" + year); } else { myDateYearEditText.setText(myStringToken); } } else if (udtea.currScreen == udtea.TEXT_DISPLAY_SCREEN) { udtea.setContentView(R.layout.text_display_screen); udtea.initBackNextButtons(); TextView myTextDisplayScreenTextView = (TextView) udtea.findViewById(R.id.text_display_textview); myTextDisplayScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextDisplayScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); // Log.d(">>>>>","inside udtea.currScreen == udtea.TEXT_DISPLAY_SCREEN"); // myTextDisplayScreenTextView = (TextView) UsbongUtils.applyHintsInView(UsbongDecisionTreeEngineActivity.getInstance(), myTextDisplayScreenTextView, UsbongUtils.IS_TEXTVIEW); // Log.d(">>>>>","after myTextDisplayScreenTextView"); } else if (udtea.currScreen == udtea.TIMESTAMP_DISPLAY_SCREEN) { udtea.setContentView(R.layout.timestamp_display_screen); udtea.initBackNextButtons(); TextView myTimeDisplayScreenTextView = (TextView) udtea.findViewById(R.id.time_display_textview); udtea.timestampString = UsbongUtils.getCurrTimeStamp(); myTimeDisplayScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTimeDisplayScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode + "{br}" + udtea.timestampString); } else if (udtea.currScreen == udtea.SIMPLE_ENCRYPT_SCREEN) { udtea.setContentView(R.layout.simple_encrypt_screen); udtea.initBackNextButtons(); TextView myEncryptScreenTextView = (TextView) udtea.findViewById(R.id.encrypt_textview); myEncryptScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myEncryptScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); String message = ""; if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { message = (String) udtea.getResources().getText(R.string.UsbongEncryptAlertMessageFILIPINO); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { message = (String) udtea.getResources().getText(R.string.UsbongEncryptAlertMessageJAPANESE); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { message = (String) udtea.getResources().getText(R.string.UsbongEncryptAlertMessageENGLISH); } new AlertDialog.Builder(udtea).setTitle("Hey!").setMessage(message) .setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).show(); } else if (udtea.currScreen == udtea.IMAGE_DISPLAY_SCREEN) { udtea.setContentView(R.layout.image_display_screen); udtea.initBackNextButtons(); ImageView myImageDisplayScreenImageView = (ImageView) udtea.findViewById(R.id.special_imageview); // if (!UsbongUtils.setImageDisplay(myImageDisplayScreenImageView, myTree+".utree/res/" +UsbongUtils.getResName(udtea.currUsbongNode))) { if (!UsbongUtils.setImageDisplay(myImageDisplayScreenImageView, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myImageDisplayScreenImageView.setImageDrawable(myDrawableImage); } } else if (udtea.currScreen == udtea.CLICKABLE_IMAGE_DISPLAY_SCREEN) { udtea.setContentView(R.layout.clickable_image_display_screen); udtea.initBackNextButtons(); ImageButton myClickableImageDisplayScreenImageButton = (ImageButton) udtea .findViewById(R.id.clickable_image_display_imagebutton); if (!UsbongUtils.setClickableImageDisplay(myClickableImageDisplayScreenImageButton, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myClickableImageDisplayScreenImageButton.setBackgroundDrawable(myDrawableImage); } myClickableImageDisplayScreenImageButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // myMessage = UsbongUtils.applyTagsInString(udtea.currUsbongNode).toString(); TextView tv = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), new TextView(UsbongDecisionTreeEngineActivity.getInstance()), UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); if (tv.toString().equals("")) { tv.setText("No message."); } tv.setTextSize((UsbongDecisionTreeEngineActivity.getInstance().getResources() .getDimension(R.dimen.textsize))); new AlertDialog.Builder(udtea).setTitle("Hey!") // .setMessage(myMessage) .setView(tv).setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).show(); } }); } else if (udtea.currScreen == udtea.TEXT_CLICKABLE_IMAGE_DISPLAY_SCREEN) { udtea.setContentView(R.layout.text_clickable_image_display_screen); udtea.initBackNextButtons(); TextView myTextClickableImageDisplayTextView = (TextView) udtea .findViewById(R.id.text_clickable_image_display_textview); myTextClickableImageDisplayTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextClickableImageDisplayTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); ImageButton myTextClickableImageDisplayScreenImageButton = (ImageButton) udtea .findViewById(R.id.clickable_image_display_imagebutton); if (!UsbongUtils.setClickableImageDisplay(myTextClickableImageDisplayScreenImageButton, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myTextClickableImageDisplayScreenImageButton.setBackgroundDrawable(myDrawableImage); } myTextClickableImageDisplayScreenImageButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // myMessage = UsbongUtils.applyTagsInString(udtea.currUsbongNode).toString(); TextView tv = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), new TextView(udtea), UsbongUtils.IS_TEXTVIEW, UsbongUtils.getAlertName(udtea.currUsbongNode)); if (tv.toString().equals("")) { tv.setText("No message."); } tv.setTextSize((UsbongDecisionTreeEngineActivity.getInstance().getResources() .getDimension(R.dimen.textsize))); new AlertDialog.Builder(udtea).setTitle("Hey!") // .setMessage(myMessage) .setView(tv).setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).show(); } }); } else if (udtea.currScreen == udtea.CLICKABLE_IMAGE_TEXT_DISPLAY_SCREEN) { udtea.setContentView(R.layout.clickable_image_text_display_screen); udtea.initBackNextButtons(); TextView myClickableImageTextDisplayTextView = (TextView) udtea .findViewById(R.id.clickable_image_text_display_textview); myClickableImageTextDisplayTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myClickableImageTextDisplayTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); ImageButton myClickableImageTextDisplayScreenImageButton = (ImageButton) udtea .findViewById(R.id.clickable_image_display_imagebutton); if (!UsbongUtils.setClickableImageDisplay(myClickableImageTextDisplayScreenImageButton, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myClickableImageTextDisplayScreenImageButton.setBackgroundDrawable(myDrawableImage); } myClickableImageTextDisplayScreenImageButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // myMessage = UsbongUtils.applyTagsInString(udtea.currUsbongNode).toString(); TextView tv = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), new TextView(udtea), UsbongUtils.IS_TEXTVIEW, UsbongUtils.getAlertName(udtea.currUsbongNode)); if (tv.toString().equals("")) { tv.setText("No message."); } tv.setTextSize((UsbongDecisionTreeEngineActivity.getInstance().getResources() .getDimension(R.dimen.textsize))); new AlertDialog.Builder(udtea).setTitle("Hey!") // .setMessage(myMessage) .setView(tv).setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).show(); } }); } else if (udtea.currScreen == udtea.VIDEO_FROM_FILE_SCREEN) { udtea.setContentView(R.layout.video_from_file_screen); udtea.initBackNextButtons(); VideoView myVideoFromFileScreenVideoView = (VideoView) udtea .findViewById(R.id.video_from_file_videoview); myVideoFromFileScreenVideoView.setVideoPath( UsbongUtils.getPathOfVideoFile(udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))); //added by Mike, Sept. 9, 2013 myVideoFromFileScreenVideoView.setMediaController(new MediaController(((Activity) udtea))); myVideoFromFileScreenVideoView.start(); } else if (udtea.currScreen == udtea.VIDEO_FROM_FILE_WITH_TEXT_SCREEN) { udtea.setContentView(R.layout.video_from_file_with_text_screen); udtea.initBackNextButtons(); TextView myVideoFromFileWithTextTextView = (TextView) udtea .findViewById(R.id.video_from_file_with_text_textview); myVideoFromFileWithTextTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myVideoFromFileWithTextTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); VideoView myVideoFromFileWithTextScreenVideoView = (VideoView) udtea .findViewById(R.id.video_from_file_with_text_videoview); myVideoFromFileWithTextScreenVideoView.setVideoPath( UsbongUtils.getPathOfVideoFile(udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))); myVideoFromFileWithTextScreenVideoView.setMediaController(new MediaController(((Activity) udtea))); myVideoFromFileWithTextScreenVideoView.start(); } else if (udtea.currScreen == udtea.TEXT_IMAGE_DISPLAY_SCREEN) { udtea.setContentView(R.layout.text_image_display_screen); udtea.initBackNextButtons(); TextView myTextImageDisplayTextView = (TextView) udtea.findViewById(R.id.text_image_display_textview); myTextImageDisplayTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myTextImageDisplayTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); ImageView myTextImageDisplayImageView = (ImageView) udtea.findViewById(R.id.image_display_imageview); // if (!UsbongUtils.setImageDisplay(myTextImageDisplayImageView, myTree+".utree/res/" +UsbongUtils.getResName(udtea.currUsbongNode))) { if (!UsbongUtils.setImageDisplay(myTextImageDisplayImageView, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myTextImageDisplayImageView.setImageDrawable(myDrawableImage); } } else if (udtea.currScreen == udtea.IMAGE_TEXT_DISPLAY_SCREEN) { udtea.setContentView(R.layout.image_text_display_screen); udtea.initBackNextButtons(); TextView myImageTextDisplayTextView = (TextView) udtea.findViewById(R.id.image_text_display_textview); myImageTextDisplayTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myImageTextDisplayTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); ImageView myImageTextDisplayImageView = (ImageView) udtea.findViewById(R.id.image_display_imageview); if (!UsbongUtils.setImageDisplay(myImageTextDisplayImageView, udtea.myTree, UsbongUtils.getResName(udtea.currUsbongNode))) { //Reference: http://www.anddev.org/tinytut_-_get_resources_by_name__getidentifier_-t460.html; last accessed 14 Sept 2011 // Resources myRes = getResources(); myDrawableImage = myRes .getDrawable(myRes.getIdentifier("no_image", "drawable", udtea.myPackageName)); myImageTextDisplayImageView.setImageDrawable(myDrawableImage); } } else if (udtea.currScreen == udtea.GPS_LOCATION_SCREEN) { udtea.setContentView(R.layout.gps_location_screen); udtea.initBackNextButtons(); TextView myGPSLocationTextView = (TextView) udtea.findViewById(R.id.gps_location_textview); myGPSLocationTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myGPSLocationTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); // TextView myLongitudeTextView = (TextView)udtea.findViewById(R.id.longitude_textview); // TextView myLatitudeTextView = (TextView)udtea.findViewById(R.id.latitude_textview); hasGottenGPSLocation = false; locationResult = new LocationResult() { @Override public void gotLocation(Location location) { //Got the location! System.out.println(">>>>>>>>>>>>>>>>>location: " + location); if (udtea.currScreen == udtea.GPS_LOCATION_SCREEN) { if (location != null) { myLongitude = location.getLongitude() + ""; myLatitude = location.getLatitude() + ""; myLongitudeTextView = (TextView) udtea.findViewById(R.id.longitude_textview); myLatitudeTextView = (TextView) udtea.findViewById(R.id.latitude_textview); hasGottenGPSLocation = true; udtea.runOnUiThread(new Runnable() { @Override public void run() { myLongitudeTextView.setText("long: " + myLongitude); myLatitudeTextView.setText("lat: " + myLatitude); } }); } else { Toast.makeText(UsbongDecisionTreeEngineActivity.getInstance(), "Error getting location. Please make sure you are not inside a building.", Toast.LENGTH_SHORT).show(); } } else { hasGottenGPSLocation = true; //to stop the cycling progress bar } } }; // myLoadingProgressBar = new ProgressBar(udtea); // myLoadingProgressBar.setIndeterminate(false); // myLoadingProgressBar.setProgressStyle(ProgressDialog.STYLE_SPINNER); udtea.myLocation = new FedorMyLocation(); udtea.myLocation.getLocation(udtea, locationResult); myLoadingProgressBar = (ProgressBar) udtea.findViewById(R.id.progressBar); new ProgressTask().execute(); } else if (udtea.currScreen == udtea.YES_NO_DECISION_SCREEN) { udtea.setContentView(R.layout.yes_no_decision_screen); udtea.initBackNextButtons(); TextView myYesNoDecisionScreenTextView = (TextView) udtea.findViewById(R.id.yes_no_decision_textview); myYesNoDecisionScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), myYesNoDecisionScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); RadioButton myYesRadioButton = (RadioButton) udtea.findViewById(R.id.yes_radiobutton); myYesRadioButton.setText(udtea.yesStringValue); myYesRadioButton.setTextSize(20); RadioButton myNoRadioButton = (RadioButton) udtea.findViewById(R.id.no_radiobutton); myNoRadioButton.setText(udtea.noStringValue); myNoRadioButton.setTextSize(20); if (myStringToken.equals("N")) { myNoRadioButton.setChecked(true); } else if ((myStringToken.equals("Y"))) { myYesRadioButton.setChecked(true); } } else if (udtea.currScreen == udtea.SEND_TO_CLOUD_BASED_SERVICE_SCREEN) { udtea.setContentView(R.layout.yes_no_decision_screen); udtea.initBackNextButtons(); TextView mySendToCloudBasedServiceScreenTextView = (TextView) udtea .findViewById(R.id.yes_no_decision_textview); mySendToCloudBasedServiceScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), mySendToCloudBasedServiceScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); RadioButton mySendToCloudBasedServiceScreenYesRadioButton = (RadioButton) udtea .findViewById(R.id.yes_radiobutton); mySendToCloudBasedServiceScreenYesRadioButton.setText(udtea.yesStringValue); mySendToCloudBasedServiceScreenYesRadioButton.setTextSize(20); RadioButton mySendToCloudBasedServiceScreenNoRadioButton = (RadioButton) udtea .findViewById(R.id.no_radiobutton); mySendToCloudBasedServiceScreenNoRadioButton.setText(udtea.noStringValue); mySendToCloudBasedServiceScreenNoRadioButton.setTextSize(20); if (myStringToken.equals("N")) { mySendToCloudBasedServiceScreenNoRadioButton.setChecked(true); } else if ((myStringToken.equals("Y"))) { mySendToCloudBasedServiceScreenYesRadioButton.setChecked(true); } } else if (udtea.currScreen == udtea.SEND_TO_WEBSERVER_SCREEN) { udtea.setContentView(R.layout.send_to_webserver_screen); udtea.initBackNextButtons(); TextView mySendToWebserverScreenTextView = (TextView) udtea .findViewById(R.id.send_to_webserver_textview); mySendToWebserverScreenTextView = (TextView) UsbongUtils.applyTagsInView( UsbongDecisionTreeEngineActivity.getInstance(), mySendToWebserverScreenTextView, UsbongUtils.IS_TEXTVIEW, udtea.currUsbongNode); TextView myWebserverURLScreenTextView = (TextView) udtea.findViewById(R.id.webserver_url_textview); if (!UsbongUtils.getDestinationServerURL().toString().equals("")) { myWebserverURLScreenTextView.setText("[" + UsbongUtils.getDestinationServerURL() + "]"); } else { myWebserverURLScreenTextView.setText("[Warning: No URL specified in Settings.]"); } RadioButton mySendToWebserverYesRadioButton = (RadioButton) udtea.findViewById(R.id.yes_radiobutton); mySendToWebserverYesRadioButton.setText(udtea.yesStringValue); mySendToWebserverYesRadioButton.setTextSize(20); RadioButton mySendToWebserverNoRadioButton = (RadioButton) udtea.findViewById(R.id.no_radiobutton); mySendToWebserverNoRadioButton.setText(udtea.noStringValue); mySendToWebserverNoRadioButton.setTextSize(20); if (myStringToken.equals("N")) { mySendToWebserverNoRadioButton.setChecked(true); } else if ((myStringToken.equals("Y"))) { mySendToWebserverYesRadioButton.setChecked(true); } } else if (udtea.currScreen == udtea.END_STATE_SCREEN) { udtea.setContentView(R.layout.end_state_screen); TextView endStateTextView = (TextView) udtea.findViewById(R.id.end_state_textview); if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_FILIPINO) { endStateTextView .setText((String) udtea.getResources().getText(R.string.UsbongEndStateTextViewFILIPINO)); } else if (udtea.currLanguageBeingUsed == UsbongUtils.LANGUAGE_JAPANESE) { endStateTextView .setText((String) udtea.getResources().getText(R.string.UsbongEndStateTextViewJAPANESE)); } else { //if (udtea.currLanguageBeingUsed==UsbongUtils.LANGUAGE_ENGLISH) { endStateTextView .setText((String) udtea.getResources().getText(R.string.UsbongEndStateTextViewENGLISH)); } udtea.initBackNextButtons(); } View myLayout = udtea.findViewById(R.id.parent_layout_id); if (!UsbongUtils.setBackgroundImage(myLayout, udtea.myTree, "bg")) { myLayout.setBackgroundResource(R.drawable.bg);//default bg } if ((!udtea.usedBackButton) && (!udtea.hasReturnedFromAnotherActivity)) { udtea.usbongNodeContainer.addElement(udtea.currUsbongNode); udtea.usbongNodeContainerCounter++; } else { udtea.usedBackButton = false; udtea.hasReturnedFromAnotherActivity = false; } }
From source file:org.openhab.habdroid.ui.OpenHABWidgetAdapter.java
@SuppressWarnings("deprecation") @Override//from w w w. jav a 2 s . c o m public View getView(int position, View convertView, ViewGroup parent) { /* TODO: This definitely needs some huge refactoring */ final RelativeLayout widgetView; TextView labelTextView; TextView valueTextView; int widgetLayout; String[] splitString; OpenHABWidget openHABWidget = getItem(position); int screenWidth = ((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE)) .getDefaultDisplay().getWidth(); switch (this.getItemViewType(position)) { case TYPE_FRAME: widgetLayout = R.layout.openhabwidgetlist_frameitem; break; case TYPE_GROUP: widgetLayout = R.layout.openhabwidgetlist_groupitem; break; case TYPE_SECTIONSWITCH: widgetLayout = R.layout.openhabwidgetlist_sectionswitchitem; break; case TYPE_SWITCH: widgetLayout = R.layout.openhabwidgetlist_switchitem; break; case TYPE_ROLLERSHUTTER: widgetLayout = R.layout.openhabwidgetlist_rollershutteritem; break; case TYPE_TEXT: widgetLayout = R.layout.openhabwidgetlist_textitem; break; case TYPE_SLIDER: widgetLayout = R.layout.openhabwidgetlist_slideritem; break; case TYPE_IMAGE: widgetLayout = R.layout.openhabwidgetlist_imageitem; break; case TYPE_SELECTION: widgetLayout = R.layout.openhabwidgetlist_selectionitem; break; case TYPE_SETPOINT: widgetLayout = R.layout.openhabwidgetlist_setpointitem; break; case TYPE_CHART: widgetLayout = R.layout.openhabwidgetlist_chartitem; break; case TYPE_VIDEO: widgetLayout = R.layout.openhabwidgetlist_videoitem; break; case TYPE_VIDEO_MJPEG: widgetLayout = R.layout.openhabwidgetlist_videomjpegitem; break; case TYPE_WEB: widgetLayout = R.layout.openhabwidgetlist_webitem; break; case TYPE_COLOR: widgetLayout = R.layout.openhabwidgetlist_coloritem; break; default: widgetLayout = R.layout.openhabwidgetlist_genericitem; break; } if (convertView == null) { widgetView = new RelativeLayout(getContext()); String inflater = Context.LAYOUT_INFLATER_SERVICE; LayoutInflater vi; vi = (LayoutInflater) getContext().getSystemService(inflater); vi.inflate(widgetLayout, widgetView, true); } else { widgetView = (RelativeLayout) convertView; } // Process the colour attributes Integer iconColor = openHABWidget.getIconColor(); Integer labelColor = openHABWidget.getLabelColor(); Integer valueColor = openHABWidget.getValueColor(); // Process widgets icon image MySmartImageView widgetImage = (MySmartImageView) widgetView.findViewById(R.id.widgetimage); // Some of widgets, for example Frame doesnt' have an icon, so... if (widgetImage != null) { if (openHABWidget.getIcon() != null) { // This is needed to escape possible spaces and everything according to rfc2396 String iconUrl = openHABBaseUrl + "images/" + Uri.encode(openHABWidget.getIcon() + ".png"); // Log.d(TAG, "Will try to load icon from " + iconUrl); // Now set image URL widgetImage.setImageUrl(iconUrl, R.drawable.blank_icon, openHABUsername, openHABPassword); if (iconColor != null) widgetImage.setColorFilter(iconColor); else widgetImage.clearColorFilter(); } } TextView defaultTextView = new TextView(widgetView.getContext()); // Get TextView for widget label and set it's color labelTextView = (TextView) widgetView.findViewById(R.id.widgetlabel); // Change label color only for non-frame widgets if (labelColor != null && labelTextView != null && this.getItemViewType(position) != TYPE_FRAME) { Log.d(TAG, String.format("Setting label color to %d", labelColor)); labelTextView.setTextColor(labelColor); } else if (labelTextView != null && this.getItemViewType(position) != TYPE_FRAME) labelTextView.setTextColor(defaultTextView.getTextColors().getDefaultColor()); // Get TextView for widget value and set it's color valueTextView = (TextView) widgetView.findViewById(R.id.widgetvalue); if (valueColor != null && valueTextView != null) { Log.d(TAG, String.format("Setting value color to %d", valueColor)); valueTextView.setTextColor(valueColor); } else if (valueTextView != null) valueTextView.setTextColor(defaultTextView.getTextColors().getDefaultColor()); defaultTextView = null; switch (getItemViewType(position)) { case TYPE_FRAME: if (labelTextView != null) { labelTextView.setText(openHABWidget.getLabel()); if (valueColor != null) labelTextView.setTextColor(valueColor); } widgetView.setClickable(false); if (openHABWidget.getLabel().length() > 0) { // hide empty frames widgetView.setVisibility(View.VISIBLE); labelTextView.setVisibility(View.VISIBLE); } else { widgetView.setVisibility(View.GONE); labelTextView.setVisibility(View.GONE); } break; case TYPE_GROUP: if (labelTextView != null && valueTextView != null) { splitString = openHABWidget.getLabel().split("\\[|\\]"); labelTextView.setText(splitString[0]); if (splitString.length > 1) { // We have some value valueTextView.setText(splitString[1]); } else { // This is needed to clean up cached TextViews valueTextView.setText(""); } } break; case TYPE_SECTIONSWITCH: splitString = openHABWidget.getLabel().split("\\[|\\]"); if (labelTextView != null) labelTextView.setText(splitString[0]); if (splitString.length > 1 && valueTextView != null) { // We have some value valueTextView.setText(splitString[1]); } else { // This is needed to clean up cached TextViews valueTextView.setText(""); } RadioGroup sectionSwitchRadioGroup = (RadioGroup) widgetView.findViewById(R.id.sectionswitchradiogroup); // As we create buttons in this radio in runtime, we need to remove all // exiting buttons first sectionSwitchRadioGroup.removeAllViews(); sectionSwitchRadioGroup.setTag(openHABWidget); Iterator<OpenHABWidgetMapping> sectionMappingIterator = openHABWidget.getMappings().iterator(); while (sectionMappingIterator.hasNext()) { OpenHABWidgetMapping widgetMapping = sectionMappingIterator.next(); SegmentedControlButton segmentedControlButton = (SegmentedControlButton) LayoutInflater .from(sectionSwitchRadioGroup.getContext()) .inflate(R.layout.openhabwidgetlist_sectionswitchitem_button, sectionSwitchRadioGroup, false); segmentedControlButton.setText(widgetMapping.getLabel()); segmentedControlButton.setTag(widgetMapping.getCommand()); if (openHABWidget.getItem() != null && widgetMapping.getCommand() != null) { if (widgetMapping.getCommand().equals(openHABWidget.getItem().getState())) { segmentedControlButton.setChecked(true); } else { segmentedControlButton.setChecked(false); } } else { segmentedControlButton.setChecked(false); } segmentedControlButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { Log.i(TAG, "Button clicked"); RadioGroup group = (RadioGroup) view.getParent(); if (group.getTag() != null) { OpenHABWidget radioWidget = (OpenHABWidget) group.getTag(); SegmentedControlButton selectedButton = (SegmentedControlButton) view; if (selectedButton.getTag() != null) { sendItemCommand(radioWidget.getItem(), (String) selectedButton.getTag()); } } } }); sectionSwitchRadioGroup.addView(segmentedControlButton); } sectionSwitchRadioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { public void onCheckedChanged(RadioGroup group, int checkedId) { OpenHABWidget radioWidget = (OpenHABWidget) group.getTag(); SegmentedControlButton selectedButton = (SegmentedControlButton) group.findViewById(checkedId); if (selectedButton != null) { Log.d(TAG, "Selected " + selectedButton.getText()); Log.d(TAG, "Command = " + (String) selectedButton.getTag()); // radioWidget.getItem().sendCommand((String)selectedButton.getTag()); sendItemCommand(radioWidget.getItem(), (String) selectedButton.getTag()); } } }); break; case TYPE_SWITCH: if (labelTextView != null) labelTextView.setText(openHABWidget.getLabel()); SwitchCompat switchSwitch = (SwitchCompat) widgetView.findViewById(R.id.switchswitch); if (openHABWidget.hasItem()) { if (openHABWidget.getItem().getStateAsBoolean()) { switchSwitch.setChecked(true); } else { switchSwitch.setChecked(false); } } switchSwitch.setTag(openHABWidget.getItem()); switchSwitch.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { SwitchCompat switchSwitch = (SwitchCompat) v; OpenHABItem linkedItem = (OpenHABItem) switchSwitch.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) if (!switchSwitch.isChecked()) { sendItemCommand(linkedItem, "ON"); } else { sendItemCommand(linkedItem, "OFF"); } return false; } }); break; case TYPE_COLOR: if (labelTextView != null) labelTextView.setText(openHABWidget.getLabel()); ImageButton colorUpButton = (ImageButton) widgetView.findViewById(R.id.colorbutton_up); ImageButton colorDownButton = (ImageButton) widgetView.findViewById(R.id.colorbutton_down); ImageButton colorColorButton = (ImageButton) widgetView.findViewById(R.id.colorbutton_color); colorUpButton.setTag(openHABWidget.getItem()); colorDownButton.setTag(openHABWidget.getItem()); colorColorButton.setTag(openHABWidget.getItem()); colorUpButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton colorButton = (ImageButton) v; OpenHABItem colorItem = (OpenHABItem) colorButton.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) sendItemCommand(colorItem, "ON"); return false; } }); colorDownButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton colorButton = (ImageButton) v; OpenHABItem colorItem = (OpenHABItem) colorButton.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) sendItemCommand(colorItem, "OFF"); return false; } }); colorColorButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton colorButton = (ImageButton) v; OpenHABItem colorItem = (OpenHABItem) colorButton.getTag(); if (colorItem != null) { if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) { Log.d(TAG, "Time to launch color picker!"); ColorPickerDialog colorDialog = new ColorPickerDialog(widgetView.getContext(), new OnColorChangedListener() { public void colorChanged(float[] hsv, View v) { Log.d(TAG, "New color HSV = " + hsv[0] + ", " + hsv[1] + ", " + hsv[2]); String newColor = String.valueOf(hsv[0]) + "," + String.valueOf(hsv[1] * 100) + "," + String.valueOf(hsv[2] * 100); OpenHABItem colorItem = (OpenHABItem) v.getTag(); sendItemCommand(colorItem, newColor); } }, colorItem.getStateAsHSV()); colorDialog.setTag(colorItem); colorDialog.show(); } } return false; } }); break; case TYPE_ROLLERSHUTTER: if (labelTextView != null) labelTextView.setText(openHABWidget.getLabel()); ImageButton rollershutterUpButton = (ImageButton) widgetView.findViewById(R.id.rollershutterbutton_up); ImageButton rollershutterStopButton = (ImageButton) widgetView .findViewById(R.id.rollershutterbutton_stop); ImageButton rollershutterDownButton = (ImageButton) widgetView .findViewById(R.id.rollershutterbutton_down); rollershutterUpButton.setTag(openHABWidget.getItem()); rollershutterStopButton.setTag(openHABWidget.getItem()); rollershutterDownButton.setTag(openHABWidget.getItem()); rollershutterUpButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton rollershutterButton = (ImageButton) v; OpenHABItem rollershutterItem = (OpenHABItem) rollershutterButton.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) sendItemCommand(rollershutterItem, "UP"); return false; } }); rollershutterStopButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton rollershutterButton = (ImageButton) v; OpenHABItem rollershutterItem = (OpenHABItem) rollershutterButton.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) sendItemCommand(rollershutterItem, "STOP"); return false; } }); rollershutterDownButton.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent motionEvent) { ImageButton rollershutterButton = (ImageButton) v; OpenHABItem rollershutterItem = (OpenHABItem) rollershutterButton.getTag(); if (motionEvent.getActionMasked() == MotionEvent.ACTION_UP) sendItemCommand(rollershutterItem, "DOWN"); return false; } }); break; case TYPE_TEXT: splitString = openHABWidget.getLabel().split("\\[|\\]"); if (labelTextView != null) if (splitString.length > 0) { labelTextView.setText(splitString[0]); } else { labelTextView.setText(openHABWidget.getLabel()); } if (valueTextView != null) if (splitString.length > 1) { // If value is not empty, show TextView valueTextView.setVisibility(View.VISIBLE); valueTextView.setText(splitString[1]); } else { // If value is empty, hide TextView to fix vertical alignment of label valueTextView.setVisibility(View.GONE); valueTextView.setText(""); } break; case TYPE_SLIDER: splitString = openHABWidget.getLabel().split("\\[|\\]"); if (labelTextView != null) labelTextView.setText(splitString[0]); SeekBar sliderSeekBar = (SeekBar) widgetView.findViewById(R.id.sliderseekbar); if (openHABWidget.hasItem()) { sliderSeekBar.setTag(openHABWidget.getItem()); sliderSeekBar.setProgress(openHABWidget.getItem().getStateAsFloat().intValue()); sliderSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { } public void onStartTrackingTouch(SeekBar seekBar) { Log.d(TAG, "onStartTrackingTouch position = " + seekBar.getProgress()); } public void onStopTrackingTouch(SeekBar seekBar) { Log.d(TAG, "onStopTrackingTouch position = " + seekBar.getProgress()); OpenHABItem sliderItem = (OpenHABItem) seekBar.getTag(); // sliderItem.sendCommand(String.valueOf(seekBar.getProgress())); if (sliderItem != null && seekBar != null) sendItemCommand(sliderItem, String.valueOf(seekBar.getProgress())); } }); if (volumeUpWidget == null) { volumeUpWidget = sliderSeekBar; volumeDownWidget = sliderSeekBar; } } break; case TYPE_IMAGE: MySmartImageView imageImage = (MySmartImageView) widgetView.findViewById(R.id.imageimage); imageImage.setImageUrl(ensureAbsoluteURL(openHABBaseUrl, openHABWidget.getUrl()), false, openHABUsername, openHABPassword); // ViewGroup.LayoutParams imageLayoutParams = imageImage.getLayoutParams(); // float imageRatio = imageImage.getDrawable().getIntrinsicWidth()/imageImage.getDrawable().getIntrinsicHeight(); // imageLayoutParams.height = (int) (screenWidth/imageRatio); // imageImage.setLayoutParams(imageLayoutParams); if (openHABWidget.getRefresh() > 0) { imageImage.setRefreshRate(openHABWidget.getRefresh()); refreshImageList.add(imageImage); } break; case TYPE_CHART: MySmartImageView chartImage = (MySmartImageView) widgetView.findViewById(R.id.chartimage); //Always clear the drawable so no images from recycled views appear chartImage.setImageDrawable(null); OpenHABItem chartItem = openHABWidget.getItem(); Random random = new Random(); String chartUrl = ""; if (chartItem != null) { if (chartItem.getType().equals("GroupItem")) { chartUrl = openHABBaseUrl + "chart?groups=" + chartItem.getName() + "&period=" + openHABWidget.getPeriod() + "&random=" + String.valueOf(random.nextInt()); } else { chartUrl = openHABBaseUrl + "chart?items=" + chartItem.getName() + "&period=" + openHABWidget.getPeriod() + "&random=" + String.valueOf(random.nextInt()); } if (openHABWidget.getService() != null && openHABWidget.getService().length() > 0) { chartUrl += "&service=" + openHABWidget.getService(); } } Log.d(TAG, "Chart url = " + chartUrl); if (chartImage == null) Log.e(TAG, "chartImage == null !!!"); ViewGroup.LayoutParams chartLayoutParams = chartImage.getLayoutParams(); chartLayoutParams.height = (int) (screenWidth / 2); chartImage.setLayoutParams(chartLayoutParams); chartUrl += "&w=" + String.valueOf(screenWidth); chartUrl += "&h=" + String.valueOf(screenWidth / 2); chartImage.setImageUrl(chartUrl, false, openHABUsername, openHABPassword); // TODO: This is quite dirty fix to make charts look full screen width on all displays if (openHABWidget.getRefresh() > 0) { chartImage.setRefreshRate(openHABWidget.getRefresh()); refreshImageList.add(chartImage); } Log.d(TAG, "chart size = " + chartLayoutParams.width + " " + chartLayoutParams.height); break; case TYPE_VIDEO: VideoView videoVideo = (VideoView) widgetView.findViewById(R.id.videovideo); Log.d(TAG, "Opening video at " + openHABWidget.getUrl()); // TODO: This is quite dirty fix to make video look maximum available size on all screens WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE); ViewGroup.LayoutParams videoLayoutParams = videoVideo.getLayoutParams(); videoLayoutParams.height = (int) (wm.getDefaultDisplay().getWidth() / 1.77); videoVideo.setLayoutParams(videoLayoutParams); // We don't have any event handler to know if the VideoView is on the screen // so we manage an array of all videos to stop them when user leaves the page if (!videoWidgetList.contains(videoVideo)) videoWidgetList.add(videoVideo); // Start video if (!videoVideo.isPlaying()) { videoVideo.setVideoURI(Uri.parse(openHABWidget.getUrl())); videoVideo.start(); } Log.d(TAG, "Video height is " + videoVideo.getHeight()); break; case TYPE_VIDEO_MJPEG: Log.d(TAG, "Video is mjpeg"); ImageView mjpegImage = (ImageView) widgetView.findViewById(R.id.mjpegimage); MjpegStreamer mjpegStreamer = new MjpegStreamer(openHABWidget.getUrl(), this.openHABUsername, this.openHABPassword, this.getContext()); mjpegStreamer.setTargetImageView(mjpegImage); mjpegStreamer.start(); if (!mjpegWidgetList.contains(mjpegStreamer)) mjpegWidgetList.add(mjpegStreamer); break; case TYPE_WEB: WebView webWeb = (WebView) widgetView.findViewById(R.id.webweb); if (openHABWidget.getHeight() > 0) { ViewGroup.LayoutParams webLayoutParams = webWeb.getLayoutParams(); webLayoutParams.height = openHABWidget.getHeight() * 80; webWeb.setLayoutParams(webLayoutParams); } webWeb.setWebViewClient( new AnchorWebViewClient(openHABWidget.getUrl(), this.openHABUsername, this.openHABPassword)); webWeb.getSettings().setJavaScriptEnabled(true); webWeb.loadUrl(openHABWidget.getUrl()); break; case TYPE_SELECTION: int spinnerSelectedIndex = -1; if (labelTextView != null) labelTextView.setText(openHABWidget.getLabel()); final Spinner selectionSpinner = (Spinner) widgetView.findViewById(R.id.selectionspinner); selectionSpinner.setOnItemSelectedListener(null); ArrayList<String> spinnerArray = new ArrayList<String>(); Iterator<OpenHABWidgetMapping> mappingIterator = openHABWidget.getMappings().iterator(); while (mappingIterator.hasNext()) { OpenHABWidgetMapping openHABWidgetMapping = mappingIterator.next(); spinnerArray.add(openHABWidgetMapping.getLabel()); if (openHABWidgetMapping.getCommand() != null && openHABWidget.getItem() != null) if (openHABWidgetMapping.getCommand().equals(openHABWidget.getItem().getState())) { spinnerSelectedIndex = spinnerArray.size() - 1; } } ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this.getContext(), android.R.layout.simple_spinner_item, spinnerArray); spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); selectionSpinner.setAdapter(spinnerAdapter); selectionSpinner.setTag(openHABWidget); if (spinnerSelectedIndex >= 0) { Log.d(TAG, "Setting spinner selected index to " + String.valueOf(spinnerSelectedIndex)); selectionSpinner.setSelection(spinnerSelectedIndex); } else { Log.d(TAG, "Not setting spinner selected index"); } selectionSpinner.post(new Runnable() { @Override public void run() { selectionSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view, int index, long id) { Log.d(TAG, "Spinner item click on index " + index); Spinner spinner = (Spinner) parent; String selectedLabel = (String) spinner.getAdapter().getItem(index); Log.d(TAG, "Spinner onItemSelected selected label = " + selectedLabel); OpenHABWidget openHABWidget = (OpenHABWidget) parent.getTag(); if (openHABWidget != null) { Log.d(TAG, "Label selected = " + openHABWidget.getMapping(index).getLabel()); Iterator<OpenHABWidgetMapping> mappingIterator = openHABWidget.getMappings() .iterator(); while (mappingIterator.hasNext()) { OpenHABWidgetMapping openHABWidgetMapping = mappingIterator.next(); if (openHABWidgetMapping.getLabel().equals(selectedLabel)) { Log.d(TAG, "Spinner onItemSelected found match with " + openHABWidgetMapping.getCommand()); if (openHABWidget.getItem() != null && openHABWidget.getItem().getState() != null) { // Only send the command for selection of selected command will change the state if (!openHABWidget.getItem().getState() .equals(openHABWidgetMapping.getCommand())) { Log.d(TAG, "Spinner onItemSelected selected label command != current item state"); sendItemCommand(openHABWidget.getItem(), openHABWidgetMapping.getCommand()); } } else if (openHABWidget.getItem() != null && openHABWidget.getItem().getState() == null) { Log.d(TAG, "Spinner onItemSelected selected label command and state == null"); sendItemCommand(openHABWidget.getItem(), openHABWidgetMapping.getCommand()); } } } } // if (!openHABWidget.getItem().getState().equals(openHABWidget.getMapping(index).getCommand())) // sendItemCommand(openHABWidget.getItem(), // openHABWidget.getMapping(index).getCommand()); } public void onNothingSelected(AdapterView<?> arg0) { } }); } }); break; case TYPE_SETPOINT: splitString = openHABWidget.getLabel().split("\\[|\\]"); if (labelTextView != null) labelTextView.setText(splitString[0]); if (valueTextView != null) if (splitString.length > 1) { // If value is not empty, show TextView valueTextView.setVisibility(View.VISIBLE); valueTextView.setText(splitString[1]); } Button setPointMinusButton = (Button) widgetView.findViewById(R.id.setpointbutton_minus); Button setPointPlusButton = (Button) widgetView.findViewById(R.id.setpointbutton_plus); setPointMinusButton.setTag(openHABWidget); setPointPlusButton.setTag(openHABWidget); setPointMinusButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Log.d(TAG, "Minus"); OpenHABWidget setPointWidget = (OpenHABWidget) v.getTag(); float currentValue = setPointWidget.getItem().getStateAsFloat(); currentValue = currentValue - setPointWidget.getStep(); if (currentValue < setPointWidget.getMinValue()) currentValue = setPointWidget.getMinValue(); if (currentValue > setPointWidget.getMaxValue()) currentValue = setPointWidget.getMaxValue(); sendItemCommand(setPointWidget.getItem(), String.valueOf(currentValue)); } }); setPointPlusButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Log.d(TAG, "Plus"); OpenHABWidget setPointWidget = (OpenHABWidget) v.getTag(); float currentValue = setPointWidget.getItem().getStateAsFloat(); currentValue = currentValue + setPointWidget.getStep(); if (currentValue < setPointWidget.getMinValue()) currentValue = setPointWidget.getMinValue(); if (currentValue > setPointWidget.getMaxValue()) currentValue = setPointWidget.getMaxValue(); sendItemCommand(setPointWidget.getItem(), String.valueOf(currentValue)); } }); if (volumeUpWidget == null) { volumeUpWidget = setPointPlusButton; volumeDownWidget = setPointMinusButton; } break; default: if (labelTextView != null) labelTextView.setText(openHABWidget.getLabel()); break; } LinearLayout dividerLayout = (LinearLayout) widgetView.findViewById(R.id.listdivider); if (dividerLayout != null) { if (position < this.getCount() - 1) { if (this.getItemViewType(position + 1) == TYPE_FRAME) { dividerLayout.setVisibility(View.GONE); // hide dividers before frame widgets } else { dividerLayout.setVisibility(View.VISIBLE); // show dividers for all others } } else { // last widget in the list, hide divider dividerLayout.setVisibility(View.GONE); } } return widgetView; }
From source file:usbong.android.retrocc.UsbongDecisionTreeEngineActivity.java
@Override public boolean onOptionsItemSelected(MenuItem item) { if (mTts.isSpeaking()) { mTts.stop();// w ww .ja v a 2s . c om } StringBuffer sb = new StringBuffer(); switch (item.getItemId()) { /* case(R.id.set_language): initSetLanguage(); //refresh the menu options supportInvalidateOptionsMenu(); //added by Mike, 20160507 invalidateOptionsMenu(); return true; case(R.id.speak): processSpeak(sb); return true; case(R.id.settings): //20160417 //Reference: http://stackoverflow.com/questions/16954196/alertdialog-with-checkbox-in-android; //last accessed: 20160408; answer by: kamal; edited by: Empty2K12 final CharSequence[] items = {UsbongConstants.AUTO_NARRATE_STRING, UsbongConstants.AUTO_PLAY_STRING, UsbongConstants.AUTO_LOOP_STRING}; // arraylist to keep the selected items selectedSettingsItems=new ArrayList<Integer>(); //check saved settings if (UsbongUtils.IS_IN_AUTO_NARRATE_MODE) { selectedSettingsItems.add(UsbongConstants.AUTO_NARRATE); } if (UsbongUtils.IS_IN_AUTO_PLAY_MODE) { selectedSettingsItems.add(UsbongConstants.AUTO_PLAY); selectedSettingsItems.add(UsbongConstants.AUTO_NARRATE); //if AUTO_PLAY is checked, AUTO_NARRATE should also be checked } if (UsbongUtils.IS_IN_AUTO_LOOP_MODE) { selectedSettingsItems.add(UsbongConstants.AUTO_LOOP); } selectedSettingsItemsInBoolean = new boolean[items.length]; for(int k=0; k<items.length; k++) { selectedSettingsItemsInBoolean[k] = false; } for(int i=0; i<selectedSettingsItems.size(); i++) { selectedSettingsItemsInBoolean[selectedSettingsItems.get(i)] = true; } inAppSettingsDialog = new AlertDialog.Builder(this) .setTitle("Settings") .setMultiChoiceItems(items, selectedSettingsItemsInBoolean, new DialogInterface.OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int indexSelected, boolean isChecked) { Log.d(">>>","onClick"); if (isChecked) { // If the user checked the item, add it to the selected items selectedSettingsItems.add(indexSelected); if ((indexSelected==UsbongConstants.AUTO_PLAY) && !selectedSettingsItems.contains(UsbongConstants.AUTO_NARRATE)) { final ListView list = inAppSettingsDialog.getListView(); list.setItemChecked(UsbongConstants.AUTO_NARRATE, true); } } else if (selectedSettingsItems.contains(indexSelected)) { if ((indexSelected==UsbongConstants.AUTO_NARRATE) && selectedSettingsItems.contains(UsbongConstants.AUTO_PLAY)) { final ListView list = inAppSettingsDialog.getListView(); list.setItemChecked(indexSelected, false); } else { // Else, if the item is already in the array, remove it selectedSettingsItems.remove(Integer.valueOf(indexSelected)); } } //updated selectedSettingsItemsInBoolean for(int k=0; k<items.length; k++) { selectedSettingsItemsInBoolean[k] = false; } for(int i=0; i<selectedSettingsItems.size(); i++) { selectedSettingsItemsInBoolean[selectedSettingsItems.get(i)] = true; } } }).setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { try { InputStreamReader reader = UsbongUtils.getFileFromSDCardAsReader(UsbongUtils.BASE_FILE_PATH + "usbong.config"); BufferedReader br = new BufferedReader(reader); String currLineString; //write first to a temporary file PrintWriter out = UsbongUtils.getFileFromSDCardAsWriter(UsbongUtils.BASE_FILE_PATH + "usbong.config" +"TEMP"); while((currLineString=br.readLine())!=null) { Log.d(">>>", "currLineString: "+currLineString); if ((currLineString.contains("IS_IN_AUTO_NARRATE_MODE=")) || (currLineString.contains("IS_IN_AUTO_PLAY_MODE=")) || (currLineString.contains("IS_IN_AUTO_LOOP_MODE="))) { continue; } else { out.println(currLineString); } } for (int i=0; i<items.length; i++) { Log.d(">>>>", i+""); if (selectedSettingsItemsInBoolean[i]==true) { if (i==UsbongConstants.AUTO_NARRATE) { out.println("IS_IN_AUTO_NARRATE_MODE=ON"); UsbongUtils.IS_IN_AUTO_NARRATE_MODE=true; } else if (i==UsbongConstants.AUTO_PLAY) { out.println("IS_IN_AUTO_PLAY_MODE=ON"); UsbongUtils.IS_IN_AUTO_PLAY_MODE=true; } else if (i==UsbongConstants.AUTO_LOOP) { out.println("IS_IN_AUTO_LOOP_MODE=ON"); UsbongUtils.IS_IN_AUTO_LOOP_MODE=true; } } else { if (i==UsbongConstants.AUTO_NARRATE) { out.println("IS_IN_AUTO_NARRATE_MODE=OFF"); UsbongUtils.IS_IN_AUTO_NARRATE_MODE=false; } else if (i==UsbongConstants.AUTO_PLAY) { out.println("IS_IN_AUTO_PLAY_MODE=OFF"); UsbongUtils.IS_IN_AUTO_PLAY_MODE=false; } else if (i==UsbongConstants.AUTO_LOOP) { out.println("IS_IN_AUTO_LOOP_MODE=OFF"); UsbongUtils.IS_IN_AUTO_LOOP_MODE=false; } } } out.close(); //remember to close //copy temp file to actual usbong.config file InputStreamReader reader2 = UsbongUtils.getFileFromSDCardAsReader(UsbongUtils.BASE_FILE_PATH + "usbong.config"+"TEMP"); BufferedReader br2 = new BufferedReader(reader2); String currLineString2; //write to actual usbong.config file PrintWriter out2 = UsbongUtils.getFileFromSDCardAsWriter(UsbongUtils.BASE_FILE_PATH + "usbong.config"); while((currLineString2=br2.readLine())!=null) { out2.println(currLineString2); } out2.close(); UsbongUtils.deleteRecursive(new File(UsbongUtils.BASE_FILE_PATH + "usbong.config"+"TEMP")); } catch(Exception e) { e.printStackTrace(); } } }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { // Your code when user clicked on Cancel } }).create(); inAppSettingsDialog.show(); return true; */ case (R.id.about): new AlertDialog.Builder(UsbongDecisionTreeEngineActivity.this).setTitle("About") .setMessage(UsbongUtils.readTextFileInAssetsFolder(UsbongDecisionTreeEngineActivity.this, "credits.txt")) //don't add a '/', otherwise the file would not be found .setPositiveButton("OK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }).show(); return true; case (R.id.account): final EditText firstName = new EditText(this); firstName.setHint("First Name"); final EditText surName = new EditText(this); surName.setHint("Surname"); final EditText contactNumber = new EditText(this); contactNumber.setHint("Contact Number"); contactNumber.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); //added by Mike, 20170223 final RadioGroup preference = new RadioGroup(this); preference.setOrientation(RadioGroup.HORIZONTAL); RadioButton meetup = new AppCompatRadioButton(this); meetup.setText("Meet-up"); preference.addView(meetup); RadioButton shipping = new AppCompatRadioButton(this); shipping.setText("Shipping"); preference.addView(shipping); final EditText shippingAddress = new EditText(this); shippingAddress.setHint("Shipping Address"); shippingAddress.setMinLines(5); //added by Mike, 20170223 final RadioGroup modeOfPayment = new RadioGroup(this); modeOfPayment.setOrientation(RadioGroup.VERTICAL); RadioButton cashUponMeetup = new AppCompatRadioButton(this); cashUponMeetup.setText("Cash upon meet-up"); modeOfPayment.addView(cashUponMeetup); RadioButton bankDeposit = new AppCompatRadioButton(this); bankDeposit.setText("Bank Deposit"); modeOfPayment.addView(bankDeposit); RadioButton peraPadala = new AppCompatRadioButton(this); peraPadala.setText("Pera Padala"); modeOfPayment.addView(peraPadala); //Reference: http://stackoverflow.com/questions/23024831/android-shared-preferences-example //; last accessed: 20150609 //answer by Elenasys //added by Mike, 20150207 SharedPreferences prefs = getSharedPreferences(UsbongConstants.MY_ACCOUNT_DETAILS, MODE_PRIVATE); if (prefs != null) { firstName.setText(prefs.getString("firstName", ""));//"" is the default value. surName.setText(prefs.getString("surname", "")); //"" is the default value. contactNumber.setText(prefs.getString("contactNumber", "")); //"" is the default value. //added by Mike, 20170223 ((RadioButton) preference.getChildAt(prefs.getInt("preference", UsbongConstants.defaultPreference))) .setChecked(true); shippingAddress.setText(prefs.getString("shippingAddress", "")); //"" is the default value. //added by Mike, 20170223 ((RadioButton) modeOfPayment .getChildAt(prefs.getInt("modeOfPayment", UsbongConstants.defaultModeOfPayment))) .setChecked(true); } LinearLayout ll = new LinearLayout(this); ll.setOrientation(LinearLayout.VERTICAL); ll.addView(firstName); ll.addView(surName); ll.addView(contactNumber); ll.addView(preference); ll.addView(shippingAddress); ll.addView(modeOfPayment); new AlertDialog.Builder(this).setTitle("My Account").setView(ll) .setNegativeButton("Cancel", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { //ACTION } }).setPositiveButton("Save & Exit", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { //ACTION //Reference: http://stackoverflow.com/questions/23024831/android-shared-preferences-example //; last accessed: 20150609 //answer by Elenasys //added by Mike, 20170207 SharedPreferences.Editor editor = getSharedPreferences( UsbongConstants.MY_ACCOUNT_DETAILS, MODE_PRIVATE).edit(); editor.putString("firstName", firstName.getText().toString()); editor.putString("surname", surName.getText().toString()); editor.putString("contactNumber", contactNumber.getText().toString()); for (int i = 0; i < preference.getChildCount(); i++) { if (((RadioButton) preference.getChildAt(i)).isChecked()) { currPreference = i; } } editor.putInt("preference", currPreference); //added by Mike, 20170223 editor.putString("shippingAddress", shippingAddress.getText().toString()); for (int i = 0; i < modeOfPayment.getChildCount(); i++) { if (((RadioButton) modeOfPayment.getChildAt(i)).isChecked()) { currModeOfPayment = i; } } editor.putInt("modeOfPayment", currModeOfPayment); //added by Mike, 20170223 editor.commit(); } }).show(); return true; case android.R.id.home: //added by Mike, 22 Sept. 2015 /*//commented out by Mike, 201702014; UsbongDecisionTreeEngineActivity is already the main menu processReturnToMainMenuActivity(); */ return true; default: return super.onOptionsItemSelected(item); } }