最も簡単なカスタムビューを実現し、ヘビの使用を貪るページを実現します.

1725 ワード

Viewのカスタマイズ方法
最初のステップは、クラスがViewから継承されることを定義します.そして彼の構造方法を実現して、このように1つのカスタムViewは書き終わって、それから私達は需要によって多くの事をすることができます
public class TestView extends View {
    public TestView (Context context) {
        super(context);
    } 
    public TestView (Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    } 
}

上はカスタムビューですが、何も実現していません.しかし、これはカスタムViewです.今、このViewの上に直線を描いて長方形を描き、円を描いてコードがどのように実現されているかを見てみましょう.
public class TestView extends View {

    public TestView(Context context) {
        super(context);
    }

    public TestView(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    }

    //    
    @Override
    protected void onDraw(Canvas canvas) {
        Paint mPaint = new Paint();
        mPaint.setColor(Color.RED);
        canvas.drawLine(100,100,100,1000,mPaint);

        mPaint.setColor(Color.BLUE);
        canvas.drawRect(200,200,400,400,mPaint);
        
        mPaint.setColor(Color.GREEN);
        canvas.drawCircle(500,500,200,mPaint);
    }
}

カスタムViewでprotected void onDraw(Canvas canvas)メソッドを上書きし、システムに付属する線、長方形、円のメソッドを呼び出して、ページを直接描くことができます.ここでは色を設定するだけです.
このようなカスタムViewが書き終わったら、私たちは直接newというViewをnewしてActivityに設定してxmlレイアウトに書くことができます.Activityでは以下を引用してnewの方法を示します
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
//        setContentView(R.layout.activity_main);
        TestView testView= new TestView(this);
        setContentView(testView);
    }
} 

実行して効果を見ましょう.
この文章は主にヘビを食べるゲームを書くためにカスタムViewを使ってこれらの知識でヘビを食べることができます.