Попытка заставить getSize работать на холсте - PullRequest
0 голосов
/ 23 января 2019

Я получаю сообщение «Не удается разрешить метод» для canvas.drawRect(0, 0, getWidth(), getHeight()); и «Невозможно применить drawLine in canvas».Пожалуйста, помогите


    public class LoginActivity extends AppCompatActivity {
    private float width;
    private float height;
 @Override
    protected void onCreate(Bundle savedInstanceState)
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    }

    protected void onDraw(Canvas canvas){
            WindowManager wm = getWindowManager();
            Display d = wm.getDefaultDisplay();

    Point point = new Point();
    d.getSize(point);
    int getWidth = point.x;
    int getHeight = point.y;
    canvas.drawRect(0, 0, getWidth(), getHeight());

    // Draw the minor grid lines
    for (int i = 0; i < 9; i++) {
    canvas.drawLine(0, i * height, getWidth(), i * height);
    canvas.drawLine(0, i * height + 1, getWidth(), i * height + 1);
    canvas.drawLine(i * width, 0, i * width, getHeight());
    canvas.drawLine(i * width + 1, 0, i * width + 1, getHeight());
    }
    // Draw the major grid lines
    for (int i = 0; i < 9; i++) {
    if (i % 3 != 0)
    continue;
    canvas.drawLine(0, i * height, getWidth(), i * height);
    canvas.drawLine(0, i * height + 1, getWidth(), i * height + 1);
    canvas.drawLine(i * width, 0, i * width, getHeight());
    canvas.drawLine(i * width + 1, 0, i * width + 1, getHeight());
    } } }

1 Ответ

0 голосов
/ 23 января 2019

Метод drawRect является частью Graphics, а не Canvas, поэтому вам необходимо выяснить, как canvas.paint() и canvas.getGraphics() работа. Документация должна дать вам достаточно, чтобы заставить ваши команды рисования работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...