Dynamicznie tworzę przyciski. Najpierw nadałem im styl XML i staram się wziąć XML poniżej i uczynić go programatycznym.
<Button
android:id="@+id/buttonIdDoesntMatter"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="buttonName"
android:drawableLeft="@drawable/imageWillChange"
android:onClick="listener"
android:layout_width="fill_parent">
</Button>
To właśnie mam. Mogę zrobić wszystko oprócz tego, co jest możliwe.
linear = (LinearLayout) findViewById(R.id.LinearView);
Button button = new Button(this);
button.setText("Button");
button.setOnClickListener(listener);
button.setLayoutParams(
new LayoutParams(
android.view.ViewGroup.LayoutParams.FILL_PARENT,
android.view.ViewGroup.LayoutParams.WRAP_CONTENT
)
);
linear.addView(button);
drawableLeft
. Wypróbowałem tutaj Twoje sugestie, aby ustawić „zabronioną ikonę” po kliknięciu folderu bez uprawnień do odczytu i działa. Jednak po zmianie folderów i ponownym załadowaniu adaptera ikona zabroniona pozostaje wyświetlana (tzn. Nie jestdrawableLeft
przerysowana). Czy wiesz, jak ubiegać sięnotifyDataSetChanged
o todrawableLeft
bez robienia pętli? Dzięki!