网上找了一堆方法, 设置windowSoftInputMode什么的, 都实现不了, 下面链接说的比较靠谱(因为我也是做的PDA), 可是, 没用

这是我的MainApplication.java代码

package com.pda;

import android.app.Application;

import android.util.Log;

import android.widget.EditText;

import java.lang.reflect.Method;

import com.facebook.react.ReactApplication;

import com.zphhhhh.speech.SpeechPackage;

import im.shimo.react.cookie.CookieManagerPackage;

import com.facebook.react.ReactNativeHost;

import com.facebook.react.ReactPackage;

import com.facebook.react.shell.MainReactPackage;

import com.facebook.soloader.SoLoader;

import com.facebook.stetho.Stetho;

import okhttp3.OkHttpClient;

import com.facebook.stetho.okhttp3.StethoInterceptor;

import java.util.Arrays;

import java.util.List;

public class MainApplication extends Application implements ReactApplication {

private EditText editText;

private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {

@Override

public boolean getUseDeveloperSupport() {

return BuildConfig.DEBUG;

}

@Override

protected List getPackages() {

return Arrays.asList(

new MainReactPackage(),

new SpeechPackage(),

new CookieManagerPackage()

);

}

@Override

protected String getJSMainModuleName() {

return "index";

}

};

@Override

public ReactNativeHost getReactNativeHost() {

return mReactNativeHost;

}

@Override

public void onCreate() {

super.onCreate();

SoLoader.init(this, /* native exopackage */ false);

Stetho.initializeWithDefaults(this);

initOkHttp();

disableShowSoftInput();

}

private void initOkHttp() {

new OkHttpClient.Builder()

.addNetworkInterceptor(new StethoInterceptor())

.build();

}

/**

* 设置展示光标弹不弹出系统键盘

*/

private void disableShowSoftInput() {

Class cls = EditText.class;

Method method;

try {

method = cls.getMethod("setShowSoftInputOnFocus", boolean.class);

method.setAccessible(true);

method.invoke(editText, false);

} catch (Exception e) {

Log.e("setShowSoftInputOnFocus", e.toString());

}

try {

method = cls.getMethod("setSoftInputShownOnFocus", boolean.class);

method.setAccessible(true);

method.invoke(editText, false);

} catch (Exception e) {

Log.e("SoftInputShownOnFocus", e.toString());

}

}

}

AndroidManifest.xml代码

package="com.pda"

android:versionCode="1"

android:versionName="1.0">

android:minSdkVersion="16"

android:targetSdkVersion="22" />

android:name=".MainApplication"

android:allowBackup="true"

android:label="@string/app_name"

android:icon="@mipmap/ic_launcher"

android:theme="@style/AppTheme">

android:name=".MainActivity"

android:label="@string/app_name"

android:configChanges="keyboard|keyboardHidden|orientation|screenSize"

android:windowSoftInputMode="adjustResize">

麻烦知道的大哥说声, 感谢万分!!!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐