这个问题与此问题有关。 My activity can't implement lifecycleOwner 我想这个问题可能包含了lifecycleOwner的答案。 我找到了这个答案 AppCompatActivity not implementing LifecycleOwner但它没有解决我的问题
我正在android中做一个android项目。在每个活动中,它都无法识别我的导入。 像这样:
private EditText edAccount;
edAccount = findViewById(R.id.edAccount);
它说:必需:android.widget.EditText Found:android.view.View
但我做imports android.widget.EditText
。这是在我导入新的库模块后发生的。但我不知道发生了什么。
此外,AppCompatActivity不再实现lifecycleOwner。
感谢您的回答
build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.example.finaldesigntest"
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
debuggable true
}
}
buildToolsVersion '27.0.3'
productFlavors {
}
}
repositories {
flatDir {
dirs 'libs'
}
mavenCentral()
}
repositories {
flatDir { dirs project(':library').file('libs') }
// maven { url 'https://jitpack.io' }
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
mavenCentral()
}
allprojects {
repositories {
//jcenter()
//maven { url 'https://maven.google.com' }
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.squareup.okhttp3:okhttp:3.10.0'
implementation 'com.contrarywind:Android-PickerView:4.0.1'
implementation 'com.android.support:support-annotations:27.1.1'
implementation project(':library')
compile 'io.reactivex.rxjava2:rxjava:2.1.6'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
implementation 'android.arch.lifecycle:runtime:1.1.1'
implementation 'android.arch.lifecycle:extensions:1.1.1'
implementation 'android.arch.lifecycle:reactivestreams:1.1.1'
annotationProcessor "android.arch.lifecycle:compiler:1.1.1"
}
这是activity的layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.finaldesigntest.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:orientation="horizontal">
<TextView
android:layout_width="90dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textSize="18sp"
android:text="Account: "/>
<EditText
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/edAccount"
android:layout_gravity="center_vertical"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:orientation="horizontal">
<TextView
android:layout_width="90dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textSize="18sp"
android:text="Password: "/>
<EditText
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/edPassword"
android:layout_gravity="center_vertical"
android:inputType="textPassword"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/remember_pass"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:text="Remember password"/>
</LinearLayout>
<Button
android:layout_width="match_parent"
android:layout_height="60dp"
android:id="@+id/login"
android:text="Login"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/view_login_result"/>
</LinearLayout>
答案 0 :(得分:2)
确保成功构建项目。它只发生在gradle构建不成功的时候。
答案 1 :(得分:0)
你需要像这样投射:
private EditText edAccount;
edAccount = (EditText) findViewById(R.id.edAccount);