我正在寻找一种方法来使用位图作为Glide的输入.我甚至不确定它是否可能.这是为了调整大小的目的.Glide具有良好的图像增强功能.问题是我有资源作为位图已经加载到内存.我能找到的唯一解决方案是将图像存储到临时文件中,并将它们作为inputStream/file重新加载回Glide ..有没有更好的方法来实现?
请在回答之前..我不是在谈论Glide的输出.. .asBitmap().get()我知道.我需要帮助输入.
这是我的解决方案:
Bitmap bitmapNew=null;
try {
//
ContextWrapper cw = new ContextWrapper(ctx);
File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
File file=new File(directory,"temp.jpg");
FileOutputStream fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.PNG, 90, fos);
fos.close();
//
bitmapNew = Glide
.with(ctx)
.load(file)
.asBitmap()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.into( mActualWidth, mActualHeight - heightText)
.get();
file.delete();
} catch (Exception e) {
Logcat.e( "File not found: " + e.getMessage());
}
Run Code Online (Sandbox Code Playgroud)
我想避免将图像写入内部并再次加载它们.这就是为什么我要问是否有办法将输入作为位图
谢谢
我们使用Android N 7.1(API-25)获得了一个奇怪的行为.在启动WebView之后,系统强制将Locale重置为设备区域设置.这会覆盖应用程序上使用的区域设置(用于本地化).重现的简便方法是在应用程序上进行本地化.并启动WebView.然后,在您再次重新启动应用之前,您将不会再看到本地化内容.这只发生在Android-7.1(API-25)上
以下是我如何切换适用于所有API的Locale:
public void switchToCzLocale() {
Locale mLocale = new Locale("cs","CZ");// it can be any other Locale
Configuration config = getBaseContext().getResources()
.getConfiguration();
Locale.setDefault(mLocale);
config.setLocale(mLocale);
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
}
Run Code Online (Sandbox Code Playgroud)
我上传了一个样本来重现该问题,详细信息如下:
https://github.com/mabuthraa/WebView-android7-issue
请知道这种行为是否是一个错误或可能是不正确的变更区域设置.
以下是Android组发行票证的链接:问题218310:[开发人员预览]创建WebView会将区域设置重置为用户默认值
我知道android studio不支持SVG中的所有元素.
到目前为止,我知道:
<defs>
<stop>
<use>
<linearGradient>
Run Code Online (Sandbox Code Playgroud)
尚不支持.
这里是对svg元素的引用 https://developer.mozilla.org/en-US/docs/Web/SVG/Element
我希望通过简单的方法将许多参数设置为对象并返回对象本身.所以我可以设置任何对象.就像是:
public class Foo {
private int mValue1;
private String mValue2;
private boolean mValue3;
private long mValue4;
public Foo() {
}
public Foo setValue1(int value1) {
mValue1 = value1;
return this;
}
public Foo setValue2(String value2) {
mValue2 = value2;
return this;
}
public Foo setValue3(boolean value3) {
mValue3 = value3;
return this;
}
public Foo setValue4(long value4) {
mValue4 = value4;
return this;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个自动生成工具,帮助我实现这一目标.
让它们(成员)在构造函数中强制我为所有成员设置null.更新成员时,过度加载构造函数也很头疼.
Android SDK更新程序显示了许多不同的系统映像.我并不需要它们.是否有选项可以检查我有兴趣在Android Studio中下载哪些软件包
但是,我无法取消选中任何系统位置图像(只能取消选中Android Repository和Offline Repo).
我真的对Google Api平台感到困惑。最近的指南可引导您生成oAuth客户端ID JSON。另一方面,根本没有明确的理由或需要产生或拥有。我正在按照以下步骤在Android上启用Google Fit:
但是OAuth客户端ID的Json文件的用途是什么? 还是那个客户ID?
111111111111-aaaaaaaaaaaaaaa.apps.googleusercontent.com (样品)
错误:无法下载 gradle-core.jar (com.android.tools.build:gradle-core:2.2.3):没有可用于离线模式的缓存版本
我正在使用 Android Studio 2.3。新更新后出现此错误。
我需要一种方法来分析我的项目并显示未使用的依赖项。我知道依赖:分析器。但它似乎与Android插件不兼容。
任何提示?
这是一个简单的gradle有三种口味:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.apipas.app.listallflavor"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
au {
applicationId 'com.apipas.app.listallflavor.au'
resConfigs 'en-rAU'
}
es {
applicationId 'com.apipas.app.listallflavor.es'
resConfigs 'es'
}
de {
applicationId 'com.apipas.app.listallflavor.de'
resConfigs 'de'
}
}
productFlavors.all {
flavor ->
println( flavor.name)
buildConfigField 'String', 'var_'+flavor.name, '\"'+flavor.name+'\"'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile …Run Code Online (Sandbox Code Playgroud) 我看到它们(where和takeWhile)都有相同的功能..否则我可能会在这里错过一些东西!
摘自:http : //docs.oracle.com/javase/tutorial/java/IandI/super.html
注意:如果构造函数未明确调用超类构造函数,则
Java编译器会自动插入对的无参数构造函数的调用
超类。如果超类没有无参数的构造函数,
您将得到一个编译时错误。对象确实具有这样的构造函数,所以
如果Object是唯一的超类,则没有问题。
我做了这个小例子来测试:
P类为超类(其空类):
package org.standro.com.pk1;
public class P {
}
Run Code Online (Sandbox Code Playgroud)
和类N在不同的程序包中,类N扩展了类P,而没有显式调用super():
import org.standro.com.pk1.P;
public class N extends P {
public N() {
//imlicitly super() is called here .. that means the constructor of P
}
public static void main(String[] arg){
N n=new N();
}
}
Run Code Online (Sandbox Code Playgroud)
且没有编译错误。.我使用JDK1.7,此示例有什么问题,为什么我没有得到错误?
我认为上述粗体字应为:
如果超类没有任何构造函数,则...
因为如果至少有一个构造函数,编译器将报错。
或者如果有人有解释..
谢谢
我正在尝试将特定的用户名设置为特定的菜单项,然后使用
LoggedUser = (String) menu.getItem(R.id.User).getTitle().toString();
Run Code Online (Sandbox Code Playgroud)
喜欢 :
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
menu.findItem(R.id.User).setTitle("username");
LoggedUse0r=(String) menu.getItem(R.id.User).getTitle().toString();
invalidateOptionsMenu();
return super.onPrepareOptionsMenu(menu);
}
Run Code Online (Sandbox Code Playgroud)
我宣布
invalidateOptionsMenu();
Run Code Online (Sandbox Code Playgroud)
用不同的方法
onCreate(), onStart(), onResume()
Run Code Online (Sandbox Code Playgroud)
但是,我的应用崩溃了,并给了我这个例外:
11-02 07:44:52.112 8714-8714 / com.example.prof_mohamedatef.listview E / AndroidRuntime:致命例外:main java.lang.IndexOutOfBoundsException:无效的索引2131492986,java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList)的大小为4 .java:251),位于com.example.android.support.v7.view.menu.MenuBuilder.getItem(MenuBuilder.java:729),位于java.util.ArrayList.get(ArrayList.java:304)。prof_mohamedatef.listview.Booking_hotels.onPrepareOptionsMenu(Booking_hotels.java:194)在android.app.Activity.onPreparePanel(Activity.java:2570)在android.support.v4.app.FragmentActivity.onPrepareOptionsPanel(FragmentActivity.java:532)在android .support.v4.app.FragmentActivity.onPreparePanel(FragmentActivity.java:521)在android.support.v7.view.WindowCallbackWrapper.onPreparePanel(WindowCallbackWrapper.java:93),位于android.support.v7.app.AppCompatDelegateImplV9.preparePanel(AppCompatDelegateImplV9.java.support:1380)上的android.support.v7.app.AppCompatDelegateImplBase $ AppCompatWindowCallbackBase.onPreparePanel(AppCompatDelegateImplBase.java:355)上。 .appCompatDelegateImplV9.doInvalidatePanelMenu(AppCompatDelegateImplV9.java:1633)在android.support.v7.app.AppCompatDelegateImplV9.access $ 100(AppCompatDelegateImplV9.java:93),位于android.os.Handler.dispatchMessage(Handler.java:android.os.Handler.handleCallback(Handler.java:725)的android.support.v7.app.AppCompatDelegateImplV9 $ 1.run(AppCompatDelegateImplV9.java:129) 92)在android.os.Looper.loop(Looper.java:137)在android.app.ActivityThread.main(ActivityThread.java:5283),位于java.lang.reflect.Method.invokeNative(本机方法),位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java.lang.reflect.Method.invoke(Method.java:511)处。 java:1102)位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)位于dalvik.system.NativeStart.main(本地方法)com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1102)处java.lang.reflect.Method.invoke(Method.java:511)处的invokeNative(Native Method) dalvik.system.NativeStart.main上的os.ZygoteInit.main(ZygoteInit.java:869)(本机方法)com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1102)处java.lang.reflect.Method.invoke(Method.java:511)处的invokeNative(Native Method) dalvik.system.NativeStart.main上的os.ZygoteInit.main(ZygoteInit.java:869)(本机方法)内部的os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1102)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)在dalvik.system.NativeStart.main(本机方法)内部的os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1102)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)在dalvik.system.NativeStart.main(本机方法)
任何人都可以告诉我获取项目标题的String与此类异常之间有什么关系:
IndexOutOfBoundsException:
Run Code Online (Sandbox Code Playgroud)
您的回复将不胜感激,在此先感谢
我想知道这两种方法是否会导致相同的结果,或者哪种方法比另一种更好.
if(isAdded()){
//do something with activity since fragment is currently added to its activity.
}
Run Code Online (Sandbox Code Playgroud)
和
if(null != getActivity()){
//do something with activity. Its not null
}
Run Code Online (Sandbox Code Playgroud) android ×10
java ×2
android-menu ×1
buildconfig ×1
dart ×1
google-fit ×1
gradle ×1
menuitem ×1
svg ×1
webview ×1