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

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

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

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

836閲覧

Android Studioのエラー

kazuma000

総合スコア10

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2018/12/19 14:28

前提・実現したいこと

Android Studioで、
名前を入力してボタンを押してもらうと、
名前が表示するという簡単なプログラムを作っています。

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

TextView、EditText、Editableの部分が赤くなってエラーになっています。

該当のソースコード

package jp.androidbook.myapplication2; import android.app.Activity import android.os.Bundle import android.support.v7.app.AppCompatActivity import android.text.Editable import android.view.View import android.widget.EditText import android.widget.TextView class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } public fun button_onClick(view: View) { TextView text =(TextView)this.findViewById<>(R.id.textView) EditText edit =(EditText)this.findViewById<>(R.id.editText) Editable s = edit.getText(); text.setText("Hi," + s + "!"); } }

試したこと

プロジェクトを立ち上げなおしたり、
別のプロジェクトを作って同じ内容を打ち込んでもダメでした。

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

画面には、上から順に、
textView
editText
Button
のみを配置しています。

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

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

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

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

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

aikon_marimo

2018/12/19 15:20

>TextView、EditText、Editableの部分が赤くなってエラーになっています。 どんなエラーが出ていますか?
guest

回答1

0

ベストアンサー

このMainActivityは、プロジェクト作成時にKotlin言語用に生成されたものですが、追加された記述はKotlin言語の仕様に適っていません。Java言語で開発したいのなら、プロジェクト作成のときにInclude Kotlin supportのチェックを外してください。

もしKotlin言語で作りたい意図があったのなら、まず簡単に文法を修めましょう。
Android Studioで始めるKotlin入門 | @IT

また、KotlinでAndroidアプリケーションを記述する場合、Kotlin Android Extensionsという拡張機能によって、findViewById()を使わずとも、XMLでコンポーネントに与えたIDを直接記述して操作することができます。(なお、敢えてfindViewById()を使うことも可能)
Kotlin Android Extensionsを試してみた
| Qiita

これらを踏まえてKotlinで作るならこのような記述になるでしょう。

kotlin

1package jp.androidbook.myapplication2 2 3import android.os.Bundle 4import android.support.v7.app.AppCompatActivity 5import android.view.View 6import kotlinx.android.synthetic.main.activity_main.* 7 8class MainActivity : AppCompatActivity() { 9 10 override fun onCreate(savedInstanceState: Bundle?) { 11 super.onCreate(savedInstanceState) 12 setContentView(R.layout.activity_main) 13 } 14 15 fun button_onClick(view: View) { 16 textView.text = "Hi,${editText.text}!" // 1行で終わり 17 } 18}

投稿2018/12/20 01:26

編集2018/12/20 02:10
keicha_hrs

総合スコア6766

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

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

kazuma000

2018/12/20 02:57

要領を得ない質問にも関わらず、 丁寧に回答して頂き、ありがとうございます! 書いて頂いたコードに直したら、解決しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問