Is there a fast way to initialize multiple buttons numbered 1-10 using for loop? (Android Application) -
i have init method finds each button using findviewbyid(r.id.pin1) , sets onclick method has method write bluetooth output stream.
button mybutton = (button) findviewbyid(r.id.pin1); mybutton.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub string msg = "1".tostring(); try { mmoutstream.write(msg.getbytes()); } catch (ioexception e) { error(); } } }); very quite literally, change 1 2 , on. next code segment is:
button mybutton = (button) findviewbyid(r.id.pin2); mybutton.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub string msg = "2".tostring(); try { mmoutstream.write(msg.getbytes()); } catch (ioexception e) { error(); } } }); i tried few things making string string pinbutton = "pin" + i.tostring() , r.id.pinbutton doesn't work. (that is, in forloop surrounded code with)
yes, can switch on button id , call same onclick() each button in xml change msg variable depending on id clicked
@override public void myclick(view v) { string msg = ""; switch (v.getid()) { case (r.id.button1): msg = "1"; break; case (r.id.button2): msg = "2"; break } try { mmoutstream.write(msg.getbytes()); } catch (ioexception e) { error(); } } }); to set onclick() in xml each button
<button ... android:onclick="myclick"/> // name whatever want method called , same each button also, don't need call tostring() on msg since string
Comments
Post a Comment