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

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

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

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

Q&A

解決済

1回答

3880閲覧

Android studioでコード補完候補一覧の中に目的のコードがない

pepeper

総合スコア4

Kotlin

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

0グッド

0クリップ

投稿2020/12/01 23:07

編集2020/12/02 22:09

前提・実現したいこと

コード補完機能を使いつつアプリの「hello world!」を「おみくじアプリ」という表示を変更したいです。

書籍 作って楽しむプログラミングAndroidアプリ超入門 p054の内容です
できるだけ、使用している本の通りにプログラミングを進めたい。

使用しているウィジェットidはhello_viewです

解決策がわかる方よろしくお願いします。

発生している問題・エラーメッセージ

setContentView(R.layout.main)の下の行に「hel」と入力すると表示される候補の中にあるはずの「hello_view from main.xml for Activity」のコードがありません。手打ちで本の通りにコードを打ち込んでもアプリが動きません。

エラーメッセージ

該当のソースコード

package jp.wings.nikkeibp.omikuji import androidx.appcompat.app.AppCompatActivity import android.os.Bundle class OmikujiActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.main) // 文字を表示する hel ←問題の部分です } }

↓最終的にこの形にしたいです

package jp.wings.nikkeibp.omikuji import androidx.appcompat.app.AppCompatActivity import android.os.Bundle imporot kotlinx.android.synthetic.main.main.* class OmikujiActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.main) // 文字を表示する hello_view.text ="おみくじアプリ" } }

試したこと

プロジェクトを最初から作り直す

補足情報(FW/ツールのバージョンなど)

android studio 4.1.1

ここにより詳細な情報を記載してください。

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

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

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

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

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

dodox86

2020/12/01 23:32

Android StudioがリソースIDの補完をしない、ということを問題にしていますか? 単語の候補、補完の機能はAndroid Studio自体の機能なので、もし補完されなくてもコーディングできてビルドが完了できるのであればとりあえず良いのではないでしょうか。「作って楽しむプログラミングAndroidアプリ超入門」と言う本を回答者の皆が持っている訳ではないので、正確な回答が付くとは限りません。(もちろん、付く可能性もありますが) また、コードはマークダウン記法を用いて読みやすくするようにしてください。インデントも崩れ、読みづらいとそれだけで回答は離れがちになります) https://teratail.com/help/question-tips#questionTips3-5-1 https://teratail.com/questions/238564 あたりを参考にしてソースコードを適切に表示するようにしましょう。
pepeper

2020/12/02 22:20

ご指摘ありがとうございます。 質問内容を修正させていただきました。
guest

回答1

0

ベストアンサー

恐らくAndroid Studio 4.0以前を対象とした書籍を参考にされているのだろうと思います。コンポーネントのIDをコードに記述すると直接参照できるようになるのは、Kotlin Android Extensionsという拡張機能のプラグインによるものですが、Android Studio 4.1で作成したプロジェクトではこれが標準で組み込まれないようになっています。

プロジェクトツリーにあるGradle Scriptsを展開して、2つあるbuild.gradleのうち(Module:<プロジェクト名>.app)とあるものを開き、

gradle

1plugins { 2 id 'com.android.application' 3 id 'kotlin-android' 4 id 'kotlin-android-extensions' 5}

のようにKotlin Android Extensionsを用いるように記述を追加して、Sync Nowのリンクをクリックして同期しましょう。その後、Kotlinソースファイルで目的の操作を行えば、補完が働くはずです。

Kotlin Android Extensionsによる補完

投稿2020/12/02 07:06

keicha_hrs

総合スコア6768

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

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

keicha_hrs

2020/12/02 07:08

Android Studio 4.1になって、他にも機能が変更になっている部分がいくつもあります。書籍と全く同一に動くことを期待するならば、Android Studioも書籍と同じバージョンにした方がいいかもしれません。下記から過去バージョンをダウンロードできます。 https://developer.android.com/studio/archive
pepeper

2020/12/03 01:18

丁寧な回答ありがとうございます。 おかげさまで問題が解決し、先に進めました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問