Android How Set A Clicked Textview With The Input Data
i have a Table of TextView (60 TextView), the user can touch them and set the text and the background of the clicked TextView. When one TextView is clicked this event open a Dialog
Solution 1:
Actually you have to either maintain TextView's ID from addMateria(View v)
or use direct TextView
.
There are many ways to keep it like, class level variables etc.,
Like, declare TextView
as a Class level member field.
publicclassActivitySetOrarioextendsActionBarActivity {
//Static perch� cosi non perdo i dati inseriti in precedenza!staticDataBaseDB=newDataBase();
int clickedTextViewId; // Declare TextViewId as class level member field@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_set_orario);
}/
Now, get reference of clicked Textview to mTextView in addMateria(View v)
publicvoidaddMateria(View v){
//To get ID of your TextView do thisif(v instanceOf TextView)
{
clickedTextViewId = v.getId();
}
//StartActivityForResult perche mi aspetto la materia inserita dall'altra activity
Intent myIntent = newIntent(ActivitySetOrario.this, ActivityAddMateria.class);
ActivitySetOrario.this.startActivityForResult(myIntent, 1);
}
Again access mTextView
in onActivityResult()
, to update color and Text
//Prende indietro la materia aggiunta dall'ActivityAddMateriaprotectedvoidonActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == RESULT_OK){
Stringresult= data.getStringExtra("result"); //Take the materia from Dialogintcolor= data.getIntExtra("color",1); //Take the color from Dialog
Materia materia;
materia = newMateria();
materia.setMateria(result); //put the name materia into class materia
materia.setColor(color); //put the color materia into class materia
DB.getMaterie().add(materia);
// Now use mTextView heretry
{
Viewview= findViewById(clickedTextViewId);
if(view instanceOf TextView)
{
TextViewtextView= (TextView) view;
textView .setText(result);
textView .setBackgroundColor(color);
}
}catch(Exception ex)
{
ex.printStacktrace();
}
}
if (resultCode == RESULT_CANCELED) {
//Nessuna materia inserita
}
}//onActivity
Post a Comment for "Android How Set A Clicked Textview With The Input Data"