Android 如何更改TextView的drawableEnd属性
我有一个Textview,我从xml文件中设置了属性drawableRight,现在我想通过编程更改drawable。 我想当点击时,可绘制的图标/图像应该从btn_上升到btn_下降 以下是我迄今为止所做的尝试: 类别: xml:Android 如何更改TextView的drawableEnd属性,android,kotlin,Android,Kotlin,我有一个Textview,我从xml文件中设置了属性drawableRight,现在我想通过编程更改drawable。 我想当点击时,可绘制的图标/图像应该从btn_上升到btn_下降 以下是我迄今为止所做的尝试: 类别: xml: 我如何解决这个问题?提前谢谢。试试看 var isClicked = false // declare this at top requireText.setOnClickListener{ requireText.setC
我如何解决这个问题?提前谢谢。试试看
var isClicked = false // declare this at top
requireText.setOnClickListener{
requireText.setCompoundDrawablesWithIntrinsicBounds(0, 0,
if(!isClicked) R.drawable.btn_up else R.drawable.btn_down, 0)
isClicked = !isClicked
}
试一试
没有.drawableRight
或Left,目前还没有,您可以尝试以下代码:
您希望在单击时切换可绘制图形的更新
没有.drawableRight
或Left,目前还没有,您可以尝试以下代码:
您希望在单击时切换可绘制图形的更新
尝试此代码在kotlin类中设置drawable right
val my_text_view = findViewById(R.id.my_text_view)
my_text_view.setOnClickListener(View.OnClickListener { my_text_view.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_arrow_upward_black_24dp, 0) })
尝试此代码在kotlin类中设置drawable right
val my_text_view = findViewById(R.id.my_text_view)
my_text_view.setOnClickListener(View.OnClickListener { my_text_view.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_arrow_upward_black_24dp, 0) })
但当我再次单击Textview时,我希望btn向上更改btn向下。我该怎么做呢?但当我再次单击文本视图时,我希望btn向上更改btn向下。我该怎么做?谢谢你的回答!!它可以很好地使用。很高兴知道,请注意,如果像@Xuzan这样的语句写得不对,但这是一种不好的做法,您的代码通常不容易阅读,Xuzan,请注意,简单是编写代码的最佳方式,我学到了这一点。感谢您的回答!!它可以很好地使用。很高兴知道,请注意,如果像@Xuzan这样的语句写得不对,但这是一种不好的做法,您的代码通常不容易阅读,Xuzan,请注意,简单是编写代码的最佳方式,我学到了这一点。
class SampleActivity : AppCompatActivity() {
var up = true
var drawable: Drawable ?=null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_signup)
userName.setOnClickListener {
if(up){
up = false
drawable = resources.getDrawable(com.exolve.eros.R.drawable.sampleDownDrawable)
}else{
up = true
drawable = resources.getDrawable(com.exolve.eros.R.drawable.sampleUpDrawable)
}
drawable!!.setBounds(0, 0, 10, 10)
userName.setCompoundDrawables(drawable, null, null, null)
}
}
}
val my_text_view = findViewById(R.id.my_text_view)
my_text_view.setOnClickListener(View.OnClickListener { my_text_view.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_arrow_upward_black_24dp, 0) })