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

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

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

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

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

692閲覧

Kotlinで画面サイズを返す関数の作り方

user3799257542

総合スコア18

Android

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

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2022/09/09 14:53

編集2022/09/09 17:40

実現したいこと

画面サイズを返す関数を作りたいです。
関数化はせず、取得だけはできている状態です。

もともと、各アクティビティに画面サイズを取得する同じコードを書いているので1つのクラスで関数化したいという経緯があります。

該当のソースコード

メインのonCreate関数内で以下のように画面サイズが取得できます。

MainActivity.kt

1override fun onCreate(savedInstanceState: Bundle?) { 2 val dSize = Point() 3 this@MainActivity.getWindowManager().getDefaultDisplay().getRealSize(dSize) 4 //横サイズはdSize.x、縦サイズはdSize.yで取得できる 5}

これを汎用クラスの関数として作成し、色んなアクティビティから呼び出したいです。

Sample.kt

1fun getDisplay(???): ??? { 2 //引数の変数を用いて画面サイズを取得して変数にセットして・・・ 3 return 画面サイズを持つ変数を返す 4}

MainAcitivityが表示されている状態でSampleクラスのgetDisplayを呼んで画面サイズを取得
TestActivityが表示されている状態でSampleクラスのgetDisplayを呼んで画面サイズを取得
のようにしたいです。

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

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

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

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

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

jimbe

2022/09/09 17:23

this@TestActivity とは何でしょう。
user3799257542

2022/09/09 17:33

アクティビティのコンテキストの取得の古い書き方のようです。 こんな感じで書く?というような予想で書いてたのが紛らわしかったので質問を少し修正します。
jimbe

2022/09/09 18:12

そうではなく、getWindowManager メソッドを使うことが出来る this@TestActivity (もしくは this@MainActivity) とは何クラスでしょうか、ということです。 そのクラスのインスタンスをパラメータとして貰えば良いのではありませんか?
guest

回答1

0

自己解決

アクティビティクラスを引数に持たせてできました

投稿2022/09/12 10:59

user3799257542

総合スコア18

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問