我创建了一个特定的List,它存在于以下元素之外,用于创建一个可滚动的列表,每行包含左侧的Image和右侧的一些文本:
首先是"根"布局:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#C8C8C8"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawSelectorOnTop="false"
android:divider="#C8C8C8"
android:background="#C8C8C8"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
然后在ListView中我放置以下"行"项:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/bg_row"
>
<ImageView
android:layout_width="wrap_content"
android:paddingLeft="10px"
android:paddingRight="15px"
android:paddingTop="5px"
android:paddingBottom="5px"
android:layout_height="wrap_content"
android:src="@drawable/bg_image"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="5px"
android:paddingBottom="5px"
android:textSize="16sp"
android:textColor="#000000"
android:layout_gravity="center"
android:maxHeight="50px"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
只要屏幕静态显示(没有移动)就会正确显示,但是当我开始滚动列表时,行项目的背景(代码中显示的"图标")将是正确显示,但"根"布局的背景将变成完全黑色...当滚动停止时,背景将会,大多数时候,恢复它的颜色...当我测试时我也在TextView
该根元素中添加了一个具有相同的背景,当滚动列表时,这个将保留它的颜色...任何想法为什么会发生这种情况,以及如何解决这个问题?
所以我已经在这个应用程序上工作了几个星期,我开始构建图标.我有Android Studio 3.0.1,他们似乎改变了Image Assets的制作方式,现在他们有了自适应图标.我为我的应用制作了一个带透明背景的图标.以前,我只是将形状更改为"无",并且不会生成背景.但现在这不是一个选择,除非我去"遗产",这是无用的.背景颜色似乎不支持透明度.即使在ic_launcher.xml
我将背景设置为透明色,但图标仍然显示为黑色背景.
这是我的 ic_lancher.xml
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/transparent"/>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
</adaptive-icon>
Run Code Online (Sandbox Code Playgroud)
和ic_launcher_round.xml是一样的.这@color/transparent
是一个:
<color name="transparent">#00000000</color>
Run Code Online (Sandbox Code Playgroud) 我有一个布局,用于更新状态栏的背景颜色colorPrimaryDark
.
当布局的根布局为a时CoordinatorLayout
,这很有用,但当我将其切换到LinearLayout
状态栏时,背景不再更新.
布局源和屏幕截图粘贴在下面.还列出了正常工作的布局示例.
谢谢!
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=".churches.ChurchesActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.CoordinatorLayout
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<FrameLayout
android:id="@+id/contentFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</android.support.design.widget.CoordinatorLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
styles.xml
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"/>
<style name="AppTheme.PopupOverlay" …
Run Code Online (Sandbox Code Playgroud) android android-layout android-linearlayout android-notification-bar android-coordinatorlayout
我有一个接受POST请求的端点。我想从JSON响应中获取新创建的实体的ID。
下面是我尝试执行的代码段。
mockMvc.perform(post("/api/tracker/jobs/work")
.contentType(TestUtil.APPLICATION_JSON_UTF8)
.content(TestUtil.convertObjectToJsonBytes(workRequest)))
.andExpect(status().isCreated());
Run Code Online (Sandbox Code Playgroud)
如果获得该ID,我将在数据库中查询新创建的实体,并执行以下一些断言:
Work work = work service.findWorkById(id);
assertThat(work.getJobItem().getJobItemName()).isEqualTo(workRequest.getJobItem().getJobItemName());
assertThat(work.getJobItem().getQuantities()).hasSize(workRequest.getQuantities().size());
assertThat(work.getJobItem().getQuantityPools()).hasSize(workRequest.getQuantities().size());
Run Code Online (Sandbox Code Playgroud) 我想从7天前到今天在Kotlin得到约会.有什么建议?这就是我到目前为止所拥有的
val date = Calendar.getInstance()
val yesterday = Calendar.getInstance()
yesterday.add(Calendar.DATE,-1)
var todayOrYesterday:String?
var todayDate = date.time
while (todayDate > yesterday.time){
val formatter = SimpleDateFormat("EEEE, d MMMM yyyy")
val format = formatter.format(todayDate)
println(format)
todayOrYesterday = if (DateUtils.isToday(date.timeInMillis)) {
"Today"
}else "Yesterday"
date.add(Calendar.DATE,-7)
}
Run Code Online (Sandbox Code Playgroud) 当应用程序处于后台时,我需要发出网络呼叫。顺序如下。该应用程序接收GCM调用,向BE发出API调用,以获取更多数据,然后显示通知。完美收到了GCM调用,但是API网络调用由于超时失败而失败,并显示以下内容stack-trace
:
java.net.SocketTimeoutException: timeout
at okio.Okio$3.newTimeoutException(Okio.java:207)
at okio.AsyncTimeout.exit(AsyncTimeout.java:250)
at okio.AsyncTimeout$2.read(AsyncTimeout.java:217)
at okio.RealBufferedSource.indexOf(RealBufferedSource.java:306)
at okio.RealBufferedSource.indexOf(RealBufferedSource.java:300)
at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:196)
at com.squareup.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:186)
at com.squareup.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:127)
at com.squareup.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:737)
at com.squareup.okhttp.internal.http.HttpEngine.access$200(HttpEngine.java:87)
at com.squareup.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(HttpEngine.java:722)
at com.nuro.newcoms.NuroCommunicationService$21.intercept(NuroCommunicationService.java:1986)
at com.squareup.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(HttpEngine.java:695)
at com.nuro.encryption.NuroSSLContext$1.intercept(NuroSSLContext.java:94)
at com.squareup.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(HttpEngine.java:695)
at com.squareup.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:576)
at com.squareup.okhttp.Call.getResponse(Call.java:287)
at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243)
at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205)
at com.squareup.okhttp.Call.execute(Call.java:80)
at retrofit.client.OkClient.execute(OkClient.java:53)
at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:326)
at retrofit.RestAdapter$RestHandler.access$100(RestAdapter.java:220)
at retrofit.RestAdapter$RestHandler$2.obtainResponse(RestAdapter.java:278)
at retrofit.CallbackRunnable.run(CallbackRunnable.java:42)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)`
Run Code Online (Sandbox Code Playgroud)
我正在使用okhttp
ver 2.7.5
,retrofit
1.9.0
该应用程序处于后台,但设备未处于休眠状态,屏幕处于打开状态,甚至正在充电。因此,这不可能是DOZE问题。
发生在WiFi
和3/4G
。
pre-nougat
设备没有这个问题。
UPD 在电池设置中将应用程序选择为“未优化”时,所有功能都像超级按钮一样。
我更改了文件 - >新建 - >图像资源中的启动器图标,图标也发生了变化.
当我点击最近的应用程序图标时,它会显示默认图标,其中正确的图标显示在主图标列表中.
验证了Android清单,其中应用程序标记包含图标标记和相应的mipmap.
这有什么不对?我正在使用xiaomi note 4 mobile.请帮忙.
我的应用程序有一个要求,我需要在 webview 中渲染多个网页并提供方法goback()
。
但不幸的是,goback()
当我们加载 url(来自多个页面的 url 之一)但不退出(网页不可用)时,该方法不起作用,然后我们尝试调用goBack()
合并两个 androidStudio 项目后,我遇到了这个错误,应用程序初始化为飞溅,并且显示和运行良好。然后当尝试访问 activity_main.xml 时,应用程序崩溃。错误是:
FATAL EXCEPTION: main
Process: eu.siacs.conversations, PID: 16604
java.lang.RuntimeException: Unable to start activity ComponentInfo{eu.siacs.conversations/eu.siacs.conversations.ui.MainActivity}: java.lang.ClassCastException: android.support.constraint.ConstraintLayout cannot be cast to android.support.v4.widget.DrawerLayout
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2787)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1504)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6247)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:872)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)
Caused by: java.lang.ClassCastException: android.support.constraint.ConstraintLayout cannot be cast to android.support.v4.widget.DrawerLayout
at eu.siacs.conversations.ui.MainActivity.onCreate(MainActivity.java:96)
at android.app.Activity.performCreate(Activity.java:6757)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2679)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2787)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1504)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6247)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:872) …
Run Code Online (Sandbox Code Playgroud) 当我使用特定的宽度400dp
作为DropDown项目的宽度时,spinner
它正确匹配。
但是,当我match_parent
用于spinner
和custom_spinner_item
宽度时,它不匹配吗?图片可能会给您一个想法
我的代码有什么问题?我想要使用相同的宽度
match_parent
吗?
这是我的习惯 custom_spinner_item
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/textView"
android:layout_width="400dp" // width
android:layout_height="30dp"
android:textSize="18dp"
android:text="wallets"
android:layout_marginLeft="5dp"
android:paddingLeft="5dp"
android:background="#FFFFFF"
android:textColor="#282727"/>
<View
android:layout_width="400dp"
android:layout_height="1dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="#8e8c8c"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我的片段
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/appbackground"
android:paddingRight="5dp"
android:paddingLeft="5dp"
android:paddingTop="5dp">
// some code
<LinearLayout
android:id="@+id/dropDownLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/zxing_roundedbgwhite"
android:orientation="vertical">
<Spinner
android:id="@+id/spinner1"
android:layout_width="400dp" // width
android:layout_height="35dp"
android:dropDownWidth="400dp" // width
android:spinnerMode="dropdown" />
</LinearLayout>
// …
Run Code Online (Sandbox Code Playgroud) android ×9
java ×2
drawerlayout ×1
kotlin ×1
listview ×1
mockmvc ×1
networking ×1
spinner ×1
spring ×1
spring-boot ×1