java - Android view enum -


in android want make enum views (let's edittexts). thought initialize edittext findviewbyid(r.id.something), have in activity-class or need instance of class.

so how can initialize edittexts in enum or can set views main-class?

i thought this, won't work:

enum edits {     one(/* write here */), two(/* write here */);      private edittext edittext;      edits(edittext edittext){         this.edittext = edittext;     }      edittext getedittext(){         return this.edittext;     }      void setedittext(edittext edittext){ // maybe this?         this.edittext = edittext;     } } 

so, how that?

attempting store reference edittext, or view matter in enum isn't going work.

in java, enum singleton, , point out, view coupled context, activity or fragment. doesn't make sense have object long lived (your enum) reference objects extremely short lived (your edittext).

as alternative, have enum store id of view (example, r.id.myedittext), , when want retrieve actual instance, pass in activity or fragment , call findviewbyid() actual instance.

example:

enum edits {     one(r.id.field1), two(r.id.field2);      private int edittextid;      edits(int edittextid) {         this.edittextid = edittextid;     }      edittext getedittext(activity activity){         return (edittext)activity.findviewbyid(edittextid);     } } 

Comments

Popular posts from this blog

c# - Send Image in Json : 400 Bad request -

jquery - Fancybox - apply a function to several elements -

An easy way to program an Android keyboard layout app -