android – 以编程方式在textview的右上角设置imageview

前端之家收集整理的这篇文章主要介绍了android – 以编程方式在textview的右上角设置imageview前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我必须以编程方式在textview的右上角设置图像.但它设置在textview的左侧.任何人都能告诉我如何处理这个问题吗?
我的代码如下:

  1. FrameLayout frameLayout = KaHOUtility.generateFrameLayout(mContext);
  2. frameLayout.setPadding(5,5,5);
  3. LinearLayout linearLayout = KaHOUtility.generateLinearLayout(mContext);
  4. KaHOTextView textView = KaHOUtility.generatePanelHeadingTextViews(mContext);
  5. textView.setText(name);
  6. linearLayout.addView(textView);
  7. frameLayout.addView(linearLayout);
  8. ImageView imageView = KaHOUtility.generateImageView(mContext,15,R.drawable.cancel_mark);
  9. LinearLayout.LayoutParams rPrams = new LinearLayout.LayoutParams(
  10. LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT);
  11. rPrams.gravity = Gravity.RIGHT|Gravity.TOP ;
  12. imageView.setLayoutParams(rPrams);
  13. frameLayout.addView(imageView);
最佳答案
您正在从LinearLayout.LayoutParams类创建布局参数.但是,imageview正被添加到FrameLayout中.这是不正确的,因为您只将直接父级的布局参数应用于视图.所以,在你的情况下,它应该是:

  1. ImageView imageView = KaHOUtility.generateImageView(mContext,R.drawable.cancel_mark);
  2. FrameLayout.LayoutParams rPrams = new FrameLayout.LayoutParams(
  3. FrameLayout.LayoutParams.WRAP_CONTENT,FrameLayout.LayoutParams.WRAP_CONTENT);
  4. rPrams.gravity = Gravity.RIGHT | Gravity.TOP ;
  5. imageView.setLayoutParams(rPrams);
  6. frameLayout.addView(imageView);

猜你在找的Android相关文章