前提・実現したいこと
超絶初心者です。
android studio 3.0で、ボタンを押したらテキストが変わる、という鬼単純なアプリに挑戦したのですが、ドットインストールの講義そのままそっくりマネしたのに、以下ソースコードの最終行、
messageTextView.text = "change world"
の .text 部分が赤くなってエラーがでます。
検索してもわかりません。。こんな初歩で。。トホホ。。
発生している問題・エラーメッセージ
unresolved reference text
該当のソースコード
kotlin
1package com.example.tsuna.myapplication 2 3import android.support.v7.app.AppCompatActivity 4import android.os.Bundle 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 changeTextView(view: View){ 16 messageTextView.text = "change world" 17 } 18} 19
build.gradle
1apply plugin: 'com.android.application' 2 3apply plugin: 'kotlin-android' 4 5apply plugin: 'kotlin-android-extensions' 6 7android { 8 compileSdkVersion 27 9 defaultConfig { 10 applicationId "com.example.tsuna.myapplication" 11 minSdkVersion 15 12 targetSdkVersion 27 13 versionCode 1 14 versionName "1.0" 15 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 16 } 17 buildTypes { 18 release { 19 minifyEnabled false 20 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 21 } 22 } 23} 24 25dependencies { 26 implementation fileTree(dir: 'libs', include: ['*.jar']) 27 implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" 28 implementation 'com.android.support:appcompat-v7:27.1.1' 29 implementation 'com.android.support.constraint:constraint-layout:1.1.0' 30 testImplementation 'junit:junit:4.12' 31 androidTestImplementation 'com.android.support.test:runner:1.0.2' 32 androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' 33}
build.gradle
1// Top-level build file where you can add configuration options common to all sub-projects/modules. 2 3buildscript { 4 ext.kotlin_version = '1.2.41' 5 repositories { 6 google() 7 jcenter() 8 } 9 dependencies { 10 classpath 'com.android.tools.build:gradle:3.1.2' 11 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" 12 13 // NOTE: Do not place your application dependencies here; they belong 14 // in the individual module build.gradle files 15 } 16} 17 18allprojects { 19 repositories { 20 google() 21 jcenter() 22 } 23} 24 25task clean(type: Delete) { 26 delete rootProject.buildDir 27} 28
試したこと
gradle.propertiesの最終行
org.gradle.parallel=true
を
org.gradle.parallel=false
に書き換えてみました(ネットの情報みてとりあえずやってみました)
見当違いだったようです。。
補足情報(FW/ツールのバージョンなど)
もちろんエミュレータテストなども成功しません。
こんな情報じゃ解決もできねえよ!勉強しろ!ということでしたらそうします。
2つあるbuild.gradleのコードも提示できませんか?基本的にはプロジェクト作成の最初の画面でInclude Kotlin supportにチェックを入れて作成したなら、そのままで問題ないはずなのですけどね。それで作成したにも関わらずtextに赤字が出るのであればちょっと不可解です。
keicha_hrsさん ありがとうございます。ソースコード追加いたしました。ひとつ不安なのが、ここへコピペするために2つのbuild.gradleをandroid studioで開いたところ、タブのところにappとMyApplicationと表示されているのですがあっていますか。また、include Kotlin supportにチェックは入れています。よろしくお願いします。
build.gradleには、プロジェクト全体用とモジュール用の2種類あります。My Application(プロジェクト名)で記されているのは前者、appと記されているのは後者となります。1つのプロジェクトには複数のモジュールを持たせることができるので、build.gradleも3つ以上になることもあります。それはいいとして、これらの内容には問題はないようなので(kotlin-stdlib-jre7は非推奨なのでkotlin-stdlib-jdk7に修正するべきなのだけど、デフォルトでこうなっちゃうんだから仕方ないですね)、先の回答通り対象のコンポーネントは本当にTextViewなんでしょうか?ということくらいしか考えつかないですね。
全てのことに丁寧に答えてくださり、本当にありがとうございました。大変心強く、また勉強になりました。またお願いします!
回答1件
あなたの回答
tips
プレビュー