我有一个线性布局,其中包含一个imageview和另一个线性布局,它是屏幕上的底栏.我在项目的其他地方使用底栏,我不认为这是问题所在.
问题是imageview占据了整个屏幕.图像本身没有,但视图确实如此.我似乎无法弄清楚这一点.正如你在我的xml中看到的那样,我没有在图像视图中使用fill_parent,我已经为图像尝试了所有可能的scaleType.
有什么建议?此外,如果它有助于我构建Android API 8
编辑:我已经更改了下面的xml,以便您可以完全使用我所写的内容.(这是我在图像视图中使用的图像:http://i.imgur.com/qN5aT.jpg)
<?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="match_parent"
android:orientation="vertical"
android:background="#FFFFFF" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitStart"
android:src="@drawable/quote_sample_img" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="This is text" />
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
http://i.imgur.com/m3msH.png (抱歉没有足够的声望发布实际图片)
在 JUnit 4 中,您可以使用规则来包装测试,以便您可以在测试运行之前和之后执行代码。在大多数情况下,这可以通过 @Before 和 @After 方法或 ExternalResource 规则来完成。然而,一些控制流结构(如 try-with-resources)不能分成两种方法。在大多数情况下,这些构造有替代方案,允许您将它们拆分为两种方法。例如,使用 try-with-resources,您可以手动获取和关闭资源,而不是使用 try 块。
我遇到的具体问题是我使用的数据库库 jOOQ 只有采用回调的事务方法。(请参阅https://www.jooq.org/doc/latest/manual/sql-execution/transaction-management/)您不能调用以下内容:
context.startTransaction()
doStuff()
context.commit() // Or rollback()
Run Code Online (Sandbox Code Playgroud)
在 JUnit4 中,这是可以的,因为您可以编写这样的规则(在 Kotlin 中,但在 Java 中等效):
class TransactionRule(private val dbSessionManager: DBSessionManager) : TestRule {
override fun apply(base: Statement, description: Description): Statement {
return object : Statement() {
override fun evaluate() {
dbSessionManager.transaction {
base.evaluate()
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
JUnit 5 中有类似的东西吗?