我查看了多个类似的问题,虽然我的查询没有找到正确的答案.
我有一个drawable,在shape.xml中定义
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<solid android:color="@color/bg_color" />
</shape>
Run Code Online (Sandbox Code Playgroud)
我想将其转换为Bitmap对象以执行某些操作,但BitmapFactory.decodeResource()返回null.
这就是我这样做的方式:
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.shape);
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?是BitmapFactory.decodeResource()适用于XML定义可绘制?
我正在尝试使用这里提出的camera2 api实现相机预览图像数据处理:使用Android L和Camera2 API进行相机预览图像数据处理.
我使用onImageAvailableListener成功接收回调,但是为了将来的处理,我需要从YUV_420_888 android.media.Image获取位图.我搜索了类似的问题,但没有一个帮助.
你能否建议我如何将android.media.Image(YUV_420_888)转换为Bitmap,或者有更好的方法来监听预览帧?
可能重复:
选择内部文本(jQuery)
我有一个跨度:
<span class="test"> target_string </span>
Run Code Online (Sandbox Code Playgroud)
这个事件是在点击页面的任何元素时触发的.
$('body').click(function(event){
if ($(event.target).attr('class') == 'test'){
alert(???);
}
}
Run Code Online (Sandbox Code Playgroud)
如何获取target_string值?
我将Android Studio Canary从2更新为3(当前版本),现在我在构建项目时遇到错误:
2017-06-15 16:32:00,831 [ thread 12] INFO - e.project.sync.GradleSyncState - Gradle sync failed: Cause: java.lang.NullPointerException
at com.android.build.gradle.internal.ide.AndroidArtifactOutputImpl.getGeneratedManifest(AndroidArtifactOutputImpl.java:110)
at sun.reflect.GeneratedMethodAccessor283.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$ReflectionMethodInvoker.invoke(ProtocolToModelAdapter.java:592)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$AdaptingMethodInvoker.invoke(ProtocolToModelAdapter.java:397)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$PropertyCachingMethodInvoker.invoke(ProtocolToModelAdapter.java:625)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$SafeMethodInvoker.invoke(ProtocolToModelAdapter.java:647)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$SupportedPropertyInvoker.invoke(ProtocolToModelAdapter.java:670)
at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$InvocationHandlerImpl.invoke(ProtocolToModelAdapter.java:356)
at com.sun.proxy.$Proxy198.getGeneratedManifest(Unknown Source)
at com.android.tools.idea.gradle.project.model.ide.android.IdeAndroidArtifactOutput.<init>(IdeAndroidArtifactOutput.java:49)
at com.android.tools.idea.gradle.project.model.ide.android.IdeAndroidArtifactImpl.lambda$new$0(IdeAndroidArtifactImpl.java:48)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.lambda$computeIfAbsent$0(ModelCache.java:31)
at java.util.HashMap.computeIfAbsent(HashMap.java:1126)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.computeIfAbsent(ModelCache.java:31)
at com.android.tools.idea.gradle.project.model.ide.android.IdeModel.copy(IdeModel.java:71)
at com.android.tools.idea.gradle.project.model.ide.android.IdeAndroidArtifactImpl.<init>(IdeAndroidArtifactImpl.java:48)
at com.android.tools.idea.gradle.project.model.ide.android.IdeVariantImpl.lambda$new$0(IdeVariantImpl.java:51)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.lambda$computeIfAbsent$0(ModelCache.java:31)
at java.util.HashMap.computeIfAbsent(HashMap.java:1126)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.computeIfAbsent(ModelCache.java:31)
at com.android.tools.idea.gradle.project.model.ide.android.IdeVariantImpl.<init>(IdeVariantImpl.java:50)
at com.android.tools.idea.gradle.project.model.ide.android.IdeAndroidProjectImpl.lambda$new$4(IdeAndroidProjectImpl.java:80)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.lambda$computeIfAbsent$0(ModelCache.java:31)
at java.util.HashMap.computeIfAbsent(HashMap.java:1126)
at com.android.tools.idea.gradle.project.model.ide.android.ModelCache.computeIfAbsent(ModelCache.java:31)
at com.android.tools.idea.gradle.project.model.ide.android.IdeModel.copy(IdeModel.java:71)
at com.android.tools.idea.gradle.project.model.ide.android.IdeAndroidProjectImpl.<init>(IdeAndroidProjectImpl.java:80)
at …Run Code Online (Sandbox Code Playgroud) development-environment android-studio android-gradle-plugin android-studio-3.0
我在kotlin编程方面比较新,最近我发现这是一个有效的陈述:
class Test : (Int) -> String {
override fun invoke(p1: Int): String {
return p1.toString()
}
}
Run Code Online (Sandbox Code Playgroud)
当我看到它时,我感觉扩展Lambdas可能不是一个很好的编程实践,但是我没有任何客观的理由这么认为.我没有找到关于这个问题的任何文档,所以你能告诉我们扩展lambdas是好还是坏.
我有以下问题:
我有两个项目:jre1.7和android 2.1.我想首先构建一个jar文件,并在第二个项目中将其用作框架.我正在使用eclipse,当我添加外部jar时,我已经做了我通常做的事情.(右键单击项目 - 构建路径 - 添加外部Jars),似乎一切都很好,有Referenced库文件夹出现,它包含jar.
但是当我尝试编译Android项目时,它会给出NoClassDefFound错误.难道我做错了什么?
我有一种使用 MultipartEntity 内容类型将图像和文本作为 HttpPost 发送的方法。一切都适用于英文符号,但对于 unicode 符号(例如 Cyrliics),它只发送 ???。所以,我想知道如何正确地为 MultipartEntity 设置 UTF-8 编码,因为我已经尝试了几个 sulutions,建议在 SO 上,但没有一个工作。这是我已经拥有的:
HttpClient httpclient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
MultipartEntityBuilder mpEntity = MultipartEntityBuilder.create();
mpEntity.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
mpEntity.setCharset(Consts.UTF_8);
mpEntity.addPart("image", new FileBody(new File(attachmentUri), ContentType.APPLICATION_OCTET_STREAM));
ContentType contentType = ContentType.create(HTTP.PLAIN_TEXT_TYPE, HTTP.UTF_8);
StringBody stringBody = new StringBody(mMessage, contentType);
mpEntity.addPart("message", stringBody);
final HttpEntity fileBody = mpEntity.build();
httpPost.setEntity(fileBody);
HttpResponse httpResponse = httpclient.execute(httpPost);
Run Code Online (Sandbox Code Playgroud)
UPD 我尝试按照@Donaudampfschifffreizeitfahrt 的建议使用 InputStream。现在我得到了???人物。
InputStream stream = new ByteArrayInputStream(mMessage.getBytes(Charset.forName("UTF-8")));
mpEntity.addBinaryBody("message", stream);
Run Code Online (Sandbox Code Playgroud)
还试过:
mpEntity.addBinaryBody("message", mMessage.getBytes(Charset.forName("UTF-8")));
Run Code Online (Sandbox Code Playgroud) 我TransitionDrawable在xml中定义如下:
转换.xml
<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_disabled" />
<item android:drawable="@drawable/ic_enabled" />
</transition>
Run Code Online (Sandbox Code Playgroud)
我用它来动画复选框的状态变化:
val stateDrawable = ContextCompat.getDrawable(this, R.drawable.transition) as TransitionDrawable
checkbox.buttonDrawable = stateDrawable
checkbox.setOnCheckedChangeListener { icon, checked ->
if (checked) {
stateDrawable.startTransition(300)
} else {
stateDrawable.reverseTransition(300)
}
}
Run Code Online (Sandbox Code Playgroud)
如果@drawable/ic_disabled和@drawable/ic_enabled是png文件,则一切正常。但如果它们是矢量绘图,则过渡不起作用。我缺少什么?不TransitionDrawable支持矢量绘图?