質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

1回答

2107閲覧

図形描画とWindowManager()の利用法について

Thanatos1219

総合スコア10

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2016/04/19 00:45

下記のプログラムでなのですが、左上に四角、左下に円、右上に三角、右下に直線を描画するというものなのですが三角の記述をどのようにすれば良いのかわかりません…
そして画面のサイズ取得はWindowManager()を利用し、端末画面の縦⇔横向きを変更しても4角に表示できるようにすること。という指定がありWindowManager()をどう使えばいいのか調べたのですがよくわかりませんでしたどうすれば上記のものを使って四角に置くことが出来るのでしょうか?

package 10110957.kakunin6;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.;
import android.view.Display;
import android.view.WindowManager;
import android.graphics.
;
import android.content.*;

public class kakunin6 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new SampleGraphicsView(this));
WindowManager wm = getWindowManager();
// Displayのインスタンス取得
Display disp = wm.getDefaultDisplay();
String width = "Width = " + disp.getWidth();
String height = "Height = " + disp.getHeight();
}
}

class SampleGraphicsView extends View {
// 描画オブジェクトの生成
Paint paint = new Paint();
Path path = new Path();
Rect r = new Rect();
RectF rf = new RectF();

public SampleGraphicsView(Context cn) { super(cn); } @Override protected void onDraw(Canvas cs) { paint.setAntiAlias(true); //四角形の塗り潰し paint.setStyle(Paint.Style.FILL); paint.setColor(Color.argb(255, 0, 0, 255)); r.set(110, 100, 110 + 80, 100 + 80); cs.drawRect(r, paint); //円の塗り潰し paint.setStyle(Paint.Style.FILL); paint.setColor(Color.argb(255, 255, 255, 0)); cs.drawCircle(150,340,40,paint); //ラインの描画 paint.setStrokeWidth(1); paint.setStyle(Paint.Style.STROKE); paint.setColor(Color.argb(255,255,0,0)); cs.drawLine(50,10,50,10+80,paint); }

}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

課題っぽいので直前的な回答はしません。

・三角形について
PathクラスとCanvas#drawPathを使って描画します。

・WindowsManagerについて
View#onDrawの中で画面の縦の長さと横の長さを取得して、図形の描画座標を画面サイズを考慮した値にすれば良さそうですね。

コードは専用記述を使いましょう。

投稿2016/04/19 01:08

yona

総合スコア18155

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問