在我的应用程序中,我必须在我的文本视图中显示图像。另外,当我单击第一次时,应绘制 1 张图像,然后单击下一次应绘制另一张图像。是否可以在 textview 中绘制图像?请帮助我..
问问题
4169 次
5 回答
3
您可以使用
setCompoundDrawables(Drawable left, Drawable top, Drawable right, Drawable bottom)
对于文本视图
于 2012-07-23T09:41:15.857 回答
2
android:background
您可以使用属性设置背景图像
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/image" />
或以编程方式使用setBackgroundDrawable()
orsetBackgroundResource()
方法:
textView.setBackgroundResource(R.drawable.image);
于 2012-07-23T09:37:38.260 回答
1
你可以获取一个 Drawable 数组,一个索引:
TextView tv;
Drawable[] drbl = new Drawable[4];
int drblIndex = 0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home);
drbl[0] = getResources().getDrawable(R.drawable.ic_launcher);
drbl[1] = getResources().getDrawable(R.drawable.img2);
drbl[2] = getResources().getDrawable(R.drawable.img3);
drbl[3] = getResources().getDrawable(R.drawable.right_arrow);
tv = (TextView) findViewById(R.id.textView1);
tv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
tv.setBackgroundDrawable(drbl[drblIndex++]);
if(drblIndex == drbl.length)
drblIndex = 0;
}
});
}
然后你可以像我一样设置该数组的值。
然后 onClick 你可以移动到下一个索引并且可以将新的 Drawable-Image 设置为 TextView。
当 Index 达到最后一个值时,简单地将其设置为零。
于 2012-07-23T09:48:38.973 回答
0
在 TextView 上设置OnClickListener
,并在其onClick()
方法中,使用以下方法设置图像:
textview.setBackgroundDrawable();
或者
textview.setBackgroundResource();
于 2012-07-23T09:42:24.243 回答
0
试试这个代码,带有图像的文本视图。
CharSequence dogstate = null ; Html.fromHtml("" + " " + "你的文本" + "
", featuregetter, null);
dogatstatus.append(狗状态);
私有 ImageGetter featuregetter = new ImageGetter() {
public Drawable getDrawable(String source) {
Log.i(" get drawable mathod ", "");
Bitmap B = BitmapFactory.decodeResource(getResources(),
R.drawable.bone);
BitmapDrawable BD = new BitmapDrawable(B);
BD.setBounds(0, 0, B.getWidth(), B.getHeight());
return BD;
}
};
于 2012-07-23T10:24:56.720 回答