小编Gun*_*ein的帖子

从ActionBarSherlock迁移到ActionBarCompat时有哪些常见问题?

我想从我的应用程序中删除ActionBarSherlock并将其替换为标准的ActionBarCompat.

  • 我如何实现ActionBarCompat?
  • 如何迁移活动?
  • 哪些导入替换ActionBarSherlock导入?
  • 什么是典型问题?

android actionbarsherlock android-actionbar android-actionbar-compat

27
推荐指数
2
解决办法
8307
查看次数

如何让 View 填充 ConstraintsLayout 中的剩余空间

如何让ViewFrameLayout 填充所有剩余空间ConstraintLayout

我有像这样的 xml:

<ImageView
    android:background="#FF0000"
    android:id="@+id/header"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_header"
    android:scaleType="fitXY"
    android:adjustViewBounds="true"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHeight_default="wrap"
    app:layout_constraintWidth_default="spread"/>
<FrameLayout
    android:background="#00FF00"
    app:layout_constraintHeight_default="spread"
    app:layout_constraintWidth_default="wrap"
    app:layout_constraintTop_toBottomOf="@id/header"
    app:layout_constrainedHeight="true"
    app:layout_constraintBottom_toTopOf="@id/footer"
    android:id="@+id/task_fragment"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>
<LinearLayout
    android:background="#FFFF00"
    android:orientation="vertical"
    android:id="@+id/footer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHeight_default="spread"
    app:layout_constraintWidth_default="spread"
    app:layout_constraintBottom_toBottomOf="parent">
    <ImageButton
        style="?borderlessButtonStyle"
        android:id="@+id/btn_ar"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:padding="0dp"
        android:scaleType="fitXY"
        android:adjustViewBounds="true"
        android:src="@drawable/ic_ar"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

有页眉、页脚和FrameLayout中间我想FrameLayout填充所有剩余空间。

我不明白,我必须使用哪些属性来扩展FrameLayout. 请帮我!

编辑:或任何具有不同布局的解决方案。

android android-constraintlayout

22
推荐指数
3
解决办法
1万
查看次数

Android ListView:检测ListView数据是否适合屏幕而不滚动

可能重复:
Android:使用notifyDataSetChanged和getLastVisiblePosition - 当listView实际更新时?

我有一个简单的ListView只有几个条目.根据设备大小和方向,ListView需要滚动或不滚动.

我在屏幕上还有一张照片,这不是必需的.如果ListView没有足够的空间而没有滚动,我想删除图片.

当我在活动的onCreate中填充ListView时,getLastVisiblePosition()尚未生效,它返回-1.因此,我无法比较最后一个可见项目与列表计数.

int lastVisiblePos = listView.getLastVisiblePosition(); //返回-1

(如果我稍后点击某个按钮重新检查,则该值是正确的.)

使用onScrollingListener为时已晚,因为图片不应该首先显示.

我正在开发API级别10.

有什么建议?

android listview

12
推荐指数
1
解决办法
7156
查看次数

Android Room LiveData选择查询参数

这是我在Stack上的第一个问题.多年来一直在使用它,但我从未问过问题 - 我总是能够在现有问题(或整个互联网上的其他各种网站)上找到解决方案.但是我现在几天都找不到或想出一个解决方案.

我决定通过一个简单的数据库应用程序自学Java和Android.我已经以"懒惰"方式实现了一些功能 - 所有选择都在主线程上完成.

现在我想使用LiveData进行选择.我已经阅读了关于android开发人员简单培训指南,并使用LiveData和RecyclerView 从codelabs指南实现了更复杂的解决方案.整个表的插入,更新,删除和选择工作完美无缺,但我不知道如何传递参数来进行选择.

示例:我有一个活动,其中包含所有记录的可滚动列表,我想将一些过滤器应用于列表(搜索).根据我的理解,DAO的实际select方法只被调用一次(创建ViewModel时),那么如何使用新参数更新查询?

其他示例:我有其他活动显示记录的所有列(用于查看和编辑).如何将id传递给查询以选择单行?

我的数据库代码与代码库中的代码相同

编辑:我终于做到了这样:每次我想更新查询参数时,我都会调用DAO中的select(通过ViewModel和Repo),并为该新列表添加一个新的观察者.这个解决方案似乎不是最佳的,但我猜它有效......

android android-room

10
推荐指数
1
解决办法
4134
查看次数

在IntelliJ IDEA中创建jni头文件

我想在IntelliJ IDEA中创建头文件.这就是我这样做的方式:

文件>设置>工具>外部工具

然后我点击+,指定标题并设置如下参数:

程序:C:\ Program Files\Java\jdk1.8.0_25\bin

参数:-d C:\ Users\Administrator\Documents\Visual Studio 2013\Projects\JniExampleLibrary -jni Example.JniExample

工作目录:C:\ Program Files\Java\jdk1.8.0_25\bin

但单击确定后,上面定义的路径中没有-d的JniExample.h文件

你能告诉我它有什么问题吗?

提前致谢

c++ java java-native-interface header intellij-idea

9
推荐指数
2
解决办法
5182
查看次数

NameValuePair已弃用

因为Android 22 NameValuePair已被弃用.

文件将我约的openConnection的文章,但是这是我做的.那么它如何被正确替换?

我知道我仍然可以使用它,并且必须构建一个字符串,只是想知道如何在方法之间传递数据.

android httpurlconnection

7
推荐指数
2
解决办法
1万
查看次数

获取活动状态(暂停/恢复)

我正在使用LoaderManager来获取一些数据,当它完成时,应该显示一个子片段.在某些情况下,当活动已处于暂停状态且无法执行片段事务时,会发生这种情况.

有没有办法获得活动的当前状态(似乎有一个mResume标志)?或者我必须维护自己的布尔值?

android android-fragments

7
推荐指数
3
解决办法
4812
查看次数

我可以在矢量上创建视图吗?

我有一个功能,需要对给定的元素进行排序。原始矢量一定不能更改,因此我需要该矢量的浅表副本。由于我不需要复制元素本身,因为它们只能被读取,所以我决定制作一个指针向量。目前,我有一个简单的循环来填充矢量,但是我想知道是否存在内置/标准解决方案,甚至可能更快。

void calcFindMinLeftAndSort(std::vector<Location>& locationsComplete, std::vector<Location*>& locationsSorted) {
    // ...

    // copy data in new array, to keep the original untouched
    locationsSorted.reserve(locationsComplete.size());
    // looking for locationsSorted.assign(&elements)
    // yes, I could use for each instead
    for (size_t i = 0; i < locationsComplete.size(); i++)
        locationsSorted.emplace_back(&locationsComplete[i]);

    // sort 
    std::sort(locationsSorted.begin(), locationsSorted.end(), compare);
}
Run Code Online (Sandbox Code Playgroud)

附加信息:locationsComplete向量按特定顺序排序,不得更改。该矢量在应用程序运行期间不会改变。排序后的locationSorted向量被另一个函数使用了一次(可以在同一函数中使用,但这种方式看起来更清晰)。返回下一个函数的结果后,locationsSorted向量将退役。因此,它可以看作是寿命很短的临时载体。

c++ vector c++11

7
推荐指数
1
解决办法
119
查看次数

在线时,JavaFX程序启动需要12秒

我从E(fx)clipse教程1制作了一个简单的"Hello World"应用程序.

从dist文件夹启动jar时,我的系统耗时超过12秒.我用oracle示例应用程序验证了它们的行为相同.

当我禁用Wifi时,启动时间不到一秒,因此没有可用的互联网连接.使用Java x86,版本7运行Windows 7(64位)计算机.

这是个人问题还是我可以在部署应用程序的所有计算机上预期此行为?然后JavaFX将毫无用处.Swing罐子立即开始.

java javafx-2

5
推荐指数
1
解决办法
756
查看次数

Android 中的 HashMap、SparseArray:多线程问题?

我知道 HashMap 和 SparseArray 都不是线程安全的。如果我有一个中央数据存储库作为 HashMap 可以被活动访问,并且可能被 AsyncTask 访问,我是否必须担心?

为了安全起见,建议使用 HashTable 或更好的 ConcurrentHashMap 吗?

multithreading android hashmap sparse-array concurrenthashmap

5
推荐指数
1
解决办法
3231
查看次数