最も簡単なカスタムビューを実現し、ヘビの使用を貪るページを実現します.
1725 ワード
Viewのカスタマイズ方法
最初のステップは、クラスがViewから継承されることを定義します.そして彼の構造方法を実現して、このように1つのカスタムViewは書き終わって、それから私達は需要によって多くの事をすることができます
上はカスタムビューですが、何も実現していません.しかし、これはカスタムViewです.今、このViewの上に直線を描いて長方形を描き、円を描いてコードがどのように実現されているかを見てみましょう.
カスタムViewでprotected void onDraw(Canvas canvas)メソッドを上書きし、システムに付属する線、長方形、円のメソッドを呼び出して、ページを直接描くことができます.ここでは色を設定するだけです.
このようなカスタムViewが書き終わったら、私たちは直接newというViewをnewしてActivityに設定してxmlレイアウトに書くことができます.Activityでは以下を引用してnewの方法を示します
実行して効果を見ましょう.
この文章は主にヘビを食べるゲームを書くためにカスタム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を使ってこれらの知識でヘビを食べることができます.