Уменьшение кнопки statelistdrawablecode statelistdrawablecode

#basic4android

#basic4android

Вопрос:

У меня этот код работал нормально несколько раз в моем проекте, но мне было интересно, как проще всего разрешить использовать его для нескольких кнопок без повторения кода. Например, у меня есть mybuttonBTN1 ниже, и я хотел бы добавить mybuttonBTN2 и т.д. — Я пробовал несколько способов, но всегда получал странные результаты.

 Dim buttonSLD As StateListDrawable
buttonSLD.Initialize
Dim buttonSTS(2) As Int
buttonSTS(0) = buttonSLD.State_Enabled
buttonSTS(1) = -buttonSLD.State_Pressed
buttonSLD.AddState2(buttonSTS, buttonENL)
Dim buttonSTS(1) As Int
buttonSTS(0) = bbuttonSLD.State_Pressed
buttonSLD.AddState2(bbuttonSTS, buttonPRS)
mybuttonBTN1.Background = buttonSLD
 

Ответ №1:

Что — то вроде:

 Sub SetStateDrawable (Btn As Button, Pressed As Drawable, Enabled As Drawable)
 Dim buttonSLD As StateListDrawable
 buttonSLD.Initialize
 Dim buttonSTS(2) As Int
 buttonSTS(0) = buttonSLD.State_Enabled
 buttonSTS(1) = -buttonSLD.State_Pressed
 buttonSLD.AddState2(buttonSTS, Pressed)
 Dim buttonSTS(1) As Int
 buttonSTS(0) = bbuttonSLD.State_Pressed
 buttonSLD.AddState2(bbuttonSTS, Enabled)
 Btn.Background = buttonSLD
End Sub

 SetStateDrawable(myButtonBTN1, buttonPRS, buttonENL)