小编Juh*_*ani的帖子

更改操作栏searchview提示文本颜色

如何更改操作栏搜索视图提示文本颜色?

这个问题解释了如何在使用ABS时获取EditText: Android ActionBar自定义搜索视图

有没有android.R.id我可以用来获取EditText的引用,所以我可以改变提示颜色?或者还有其他方法可以改变颜色吗?

操作栏搜索视图提示文本

search android android-actionbar

48
推荐指数
11
解决办法
7万
查看次数

来自画廊/相机意图的图片方向

我从相机/画廊意图到我的应用程序的照片.在许多手机中,我从意图/ Uri中读取的图片已经旋转到正确的方向.例如N1,Legend,Desire就是这种情况.

但是在某些手机上(例如Milestone1,GalaxyS),无论拍摄图片的方式如何,图片总是在风景中.这意味着在我的应用程序中,纵向图片以错误的方式呈现给用户.我试图读取图片的EXIF信息,但方向标记始终为0.必须有一种方法可以找到图片的正确方向,因为在Milestone1中,图库应用程序正确显示肖像图片.

我如何知道在向用户展示之前是否需要自己旋转图片?

谢谢你的帮助!

android image orientation

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

Android ListView当前滚动位置Y像素

我试图检测列表视图何时滚动超过某个固定阈值(以像素为单位)(第一项的一半).不幸的是listview的getScrollY()似乎总是返回滚动位置的0个instad.有没有办法按像素获取实际的滚动位置?

这是我试图使用的代码,但据说它只返回0.

getListView().setOnScrollListener(new AbsListView.OnScrollListener() {
    public void onScroll(AbsListView view, int firstVisibleItem,
                         int visibleItemCount, int totalItemCount) {
        Log.d("scroll", "scroll: " + getListView().getScrollY());
    }

    public void onScrollStateChanged(AbsListView view, int scrollState) {
        if (scrollState == 0)
        Log.d("scroll", "scrolling stopped");
    }
});
Run Code Online (Sandbox Code Playgroud)

android listview scroll scroll-offset

29
推荐指数
1
解决办法
4万
查看次数

使用较短的拖动使ViewPager捕捉

有没有办法让支持包ViewPager以较短的阻力捕捉到下一页?默认行为似乎是,即使我拖动了近75%的页面,当我放手时页面仍会快速回到上一页.我想缩短捕捉阈值并使ViewPager快速转到下一页.

请注意,这适用于拖动手势.一个投掷手势已经需要更短的手势.

android gesture android-viewpager

17
推荐指数
1
解决办法
4246
查看次数

如何将ViewPager页面更改限制为每个手势一个

当您使用setPageMargin为ViewPager设置负边距时,页面将变得小于ViewPager的整个宽度.这样做的副作用是用户可以使用一个长手势来多次更改活动页面.

有没有办法阻止单个手势多次更改页面?

我试图阻止动作事件到达寻呼机,但你必须让MotionEvent.ACTION_UP通过或者寻呼机无法正常工作.up还会触发ViewPager中基于速度的计算,并在触发时导致额外的页面更改.

我需要重置拖动的速度,或者我需要以某种方式阻止其他页面更改.

我已经使用了这个问题的答案中描述的方法来停止滚动但是描述的ACTION_UP问题阻止我完成它. 是否可以禁用ViewPager上的滚动

有任何想法吗?

android android-viewpager

13
推荐指数
1
解决办法
1179
查看次数

用于启动器和发送活动的Intent过滤器

我正在尝试将我的主要活动作为启动器活动并接收发送事件.不知怎的,我似乎无法使两者同时工作.要么我在应用程序托盘中有启动器图标,要么不在图库中的图像共享菜单中.如何让两者同时工作.

使用此意图过滤器,图标位于应用程序托盘中,但不在共享菜单中.

         <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

有了这个,我有它在共享但不在应用程序托盘中

        <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
            <data android:mimeType="image/*" />
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

我怀疑它与数据元素有关,我试过这个但是没有用

        <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
               <data android:mimeType="image/*">
            </action>  
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

任何帮助非常感谢,谢谢!

android filter android-intent

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

Android Realm.io迁移:回退到.deleteRealmIfMigrationNeeded()

将Android Realm.io实例迁移到较新的模式时,我在迁移实现中提供了迁移步骤:

  RealmConfiguration config = new RealmConfiguration
            .Builder(this)
            .schemaVersion(SCHEMA_VERSION)
            .migration(new Migration())
            .build();
Run Code Online (Sandbox Code Playgroud)

我想要在实际的迁移代码中做什么,我想回溯到deleteRealmIfMigrationNeeded较旧的模式版本.

有没有办法做到这一点?我试图这样做,deleteAll()但这似乎不起作用,因为有些人从旧版本的应用程序更新正在获得Realm验证错误.

public class Migration implements RealmMigration {
    @Override
    public void migrate(DynamicRealm realm, long oldVersion, long newVersion) {

        if (oldVersion < 105) {
            realm.deleteAll();
            return;
        }

        //handle newer schema versions


    }
}
Run Code Online (Sandbox Code Playgroud)

android realm

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