0

フラグメントからテキストを渡すことができるように、カスタム TextView でコンストラクターを設定するにはどうすればよいですか?

つまり、フラグメント (Fragment1) からカスタム ビュー (View1) にテキストを送信する方法がわかりません。

public class View1 extends TextView {

    //constructors:
    public View1(Context context, AttributeSet ats, int ds) {
        super(context, ats, ds);
        init();
    }

    public View1(Context context) {
        super(context);
        init();
    }

    public View1(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }
...
canvas.drawText(myString, margin1, margin2, paint); //myString is from Fragment1
....
}

ここで同様の質問をしましたが、あまり役に立ちませんでした。サンプル コードは、私の混乱を解消するのに大いに役立ちます。前もって感謝します!

4

1 に答える 1

0

TextViewとにかく拡張しています。A--C が述べたように、テキストの取得と設定getText()だけでなく、 も使用できます。setText()

TextViewあなたの文脈では、カスタムビュー/ウィジェットを実装するために使用するのが良い考えかどうかはわかりません. TextViewビューは、書式設定、アイコン/描画可能な表示、クリック/ボタンのロジックなどのためにあらゆる種類のものを運ぶので、より良い出発点かもしれません.

システムが XML レイアウトからコンポーネントをインスタンス化/拡張できるようにする場合は、標準コンストラクターを定義する必要があります。次に、他のすべてのコントロールと同じように、データに標準のゲッター/セッターを使用できます。

ウィジェット/ビューを自分で (コード内で) インスタンス化する場合、任意のコンストラクターを自由に定義できます (私は信じています)。

于 2013-02-16T04:33:58.197 に答える