对不起,我的英语不好.
我有一个TextView,它有一个背景图像资源.但是当我点击这个TextView时,Android需要将当前背景图像资源与可绘制文件夹中的R.drawable.bg_images之一进行比较.
bg_image_1 bg_image_2
如果TextView setBackgroundImageResource是bg_image_1并且我单击它,则将TextView背景图像切换为gb_image_2资源.
怎么样?
谢谢
我的目标是在创建上下文之前重写应用程序语言,并且我将使用该上下文来调用其他活动.它可以通过在"onCreate"上对"重新创建()"方法进行校对,但我不想重新创建活动以实现该目标.例如
@Override
protected void attachBaseContext(Context newBase) {
//null exception here
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
String langKey = getString(R.string.pref_language_key);
String langValue = sharedPreferences.getString(langKey, null);
super.attachBaseContext(ConfigurationUtil.wrapLanguage(newBase, langValue));
}
Run Code Online (Sandbox Code Playgroud)
如果这不可能,那么如何设置用户从设置中选择的应用程序语言?
我有项目,Kotlin我已经将Android Studio更新到2.3.3和gradle3.3并将工具构建到25.3.1.在构建期间,我收到此错误:
Caused by: java.lang.UnsupportedOperationException: The "android" command is no longer included in the SDK. Any references to it (e.g. by third-party plugins) should be removed.
at com.android.SdkConstants.androidCmdName(SdkConstants.java:1947)
at com.android.SdkConstants$androidCmdName$0.callStatic(Unknown Source)
at com.jakewharton.sdkmanager.internal.AndroidCommand$Real.<init>(AndroidCommand.groovy:21)
at com.jakewharton.sdkmanager.internal.PackageResolver.resolve(PackageResolver.groovy:22)
at com.jakewharton.sdkmanager.internal.PackageResolver$resolve.call(Unknown Source)
at com.jakewharton.sdkmanager.SdkManagerPlugin$_apply_closure2$_closure3.doCall(SdkManagerPlugin.groovy:44)
at com.jakewharton.sdkmanager.SdkManagerPlugin$_apply_closure2$_closure3.doCall(SdkManagerPlugin.groovy)
at com.jakewharton.sdkmanager.SdkManagerPlugin.time(SdkManagerPlugin.groovy:51)
at com.jakewharton.sdkmanager.SdkManagerPlugin$_apply_closure2.doCall(SdkManagerPlugin.groovy:43)
at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:40)
at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:25)
at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:44)
at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:79)
at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
at com.sun.proxy.$Proxy16.afterEvaluate(Unknown Source)
at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:82)
... 56 more
Run Code Online (Sandbox Code Playgroud)
Gralde文件:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' } …Run Code Online (Sandbox Code Playgroud) android build-tools kotlin android-studio android-gradle-plugin
我想在选择位置时获取完整地址。这是我的场景的一个例子。
当我选择 Uttara 时,如果我应用 place.getName(),我只会得到 Uttara。如果我申请 place.getAddress(),我只会得到孟加拉国 Uttara。我如何才能获得孟加拉国达卡省达卡 Uttara?请各位大侠帮忙......
这是我的代码片段:
PlaceAutocompleteFragment places= (PlaceAutocompleteFragment)
getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment_pick);
LinearLayout ll = (LinearLayout) places.getView().findViewById(R.id.place_autocomplete_fragment_pick);
ll.setPadding(-7,-7,-7,-7);
etPickPlace = (EditText)places.getView().findViewById(R.id.place_autocomplete_search_input);
etPickPlace.setTextColor(getResources().getColor(R.color.colorPrimaryDark));
etPickPlace.setTextSize(18.0f);
AutocompleteFilter typeFilter = new AutocompleteFilter.Builder()
.setCountry("BD")
.build();
places.setFilter(typeFilter);
places.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
//Here I want to get the full pick up address
pickAddress = place.getAddress().toString();
// Toast.makeText(getApplicationContext(),place.getName(),Toast.LENGTH_SHORT).show();
}
@Override
public void onError(Status status) {
Toast.makeText(getApplicationContext(),status.toString(), Toast.LENGTH_SHORT).show();
}
});
Run Code Online (Sandbox Code Playgroud)