如何使用新功能扩展文本视图



我有以下代码,问题是我的函数rlposition()无法从类外部使用。

public class RLbadge extends TextView {
    public RLbadge(Context context) {
        super(context);
        this.setTypeface(null, Typeface.BOLD);
        this.setTextColor(Color.WHITE);
        this.setBackgroundResource(R.drawable.badge);
        this.setTextSize(18);
    }
    public void rlposition(Button pButton) {
        // THIS FUNCTION ISNT SEEN FROM OUTSIDE WHY?
    }
    protected void onDraw (Canvas canvas) {
        super.onDraw(canvas);
    }
}

为什么函数 rlposition 在类外部不可见?是否可以向扩展TextView添加功能?

 <YOURPACKAGENAME.MyTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="32sp"
        android:text="TEASTING" />

这是类

    public class MyTextView extends TextView {
    public MyTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init(attrs);
    }
    public MyTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(attrs);
    }
    public MyTextView(Context context) {
        super(context);
        init(null);
    }
    private void init(AttributeSet attrs) {
        // Do your staff
        }
    }
}
我现在

自己回答了这个问题,把它放在这里,也许将来有人需要答案。

问题是这句话:

TextView badgeInfoscan = new RLbadge(this);
badgeInfoscan.rlposition(); // here the error comes

改为

RLbadge badgeInfoscan = new RLbadge(this);
badgeInfoscan.rlposition(); // the function is visible