小编Jon*_*Jon的帖子

"不要保留活动" - 当应用程序恢复时,片段仅在一秒钟内可见

我有一个使用片段的应用程序.如果我启用"不保留活动",然后输入活动并输入片段,然后使用主页按钮最小化并重新打开应用程序,则会发生以下行为 - 应用程序在打开的片段上恢复大约半秒钟,然后立即恢复片段关闭,应用程序的主要活动显示.

对于像这样的情况,我是否需要为片段管理器执行某种恢复状态?此外,为什么片段显示半秒然后关闭?

MainActivity的代码:

myFragment = (MyFragment) MyFragment.create(id);
            getSupportFragmentManager().beginTransaction().setCustomAnimations(R.anim.slide_in_right,     R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right)
                //.hide(getMainFragment())
                .add(R.id.content, MyFragment.create(id), MY_FRAGMENT_TAG)
                .addToBackStack(null)
                .commit();
        setDrawerIndicatorEnabled(false);
Run Code Online (Sandbox Code Playgroud)

android fragment fragmentmanager

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

Android:在不使用任何需要主动请求的权限的情况下获取用户国家代码的方法?

我想获取用户的国家/地区代码,而不使用在 android M 下需要主动请求的任何权限。例如,如果用户位于中国,我想取回 CH。我不想为此使用“危险”权限 - 也不想read_phone_state通过TelephonyManager,也不想通过位置来尝试根据他的 GPS 进行猜测。有没有办法做到这一点,如果有的话,怎么做?

我尝试使用以下代码,但如果用户将其语言设置与其所在国家/地区分开(例如印度的用户将其手机设置为 English_US),则很容易失败:

Resources r = paramContext.getResources();
Configuration config = r.getConfiguration();
Locale currentLocale = config.locale;
Log.d("TAG", "Country: " + currentLocale.getCountry()); 
Run Code Online (Sandbox Code Playgroud)

android country-codes android-location android-permissions android-6.0-marshmallow

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

这是有效的ISO 8601格式的字符串吗?

以下日期字符串是当前有效的ISO 8601格式的字符串吗?

2016-09-18T17:34:02.666Z
Run Code Online (Sandbox Code Playgroud)

在8601 的Wiki上,我没有看到这种格式,但是在此处指定这种格式。

datetime iso8601

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

Android:edittext - 在一个字母用句点替换第一个空格后键入两个空格

我注意到在一个edittext中如果你键入一个(或几个)字母/ s然后做一个双空格它用一个句点替换第一个空格 - 它显然认为你正在尝试输入一个新句子.我想禁用这种行为 - 这怎么可能?

<EditText
            android:id="@+id/someId"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="30dp"
            android:layout_marginStart="30dp"
            android:layout_marginRight="30dp"
            android:layout_marginEnd="30dp"
            android:layout_marginTop="10dp"
            android:gravity="center"
            android:hint="@string/somehint"
            android:textColorHint="@color/somecolor"
            android:textSize="20sp"
            android:textColor="@android:color/black"
            android:background="@android:color/white"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:cursorVisible="true"
            android:textCursorDrawable="@null"
            />
Run Code Online (Sandbox Code Playgroud)

java user-interface android android-edittext

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

Android:混淆了compileSdkVersion + targetSdkVersion 23

我希望在Play商店中有一个应用程序供Android M用户下载,但应用程序的权限模型尚未完成.如果我将compileSdkVersion和targetSdkVersion设置为22而不是23 - android M用户是否会看到该应用程序并能够dl它(在运行时授予所有权限)?

compileSdkVersion 22

defaultConfig {
    minSdkVersion 15
    targetSdkVersion 22
}
Run Code Online (Sandbox Code Playgroud)

java sdk android

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

Android:使用LeadingMarginSpan在textview中显示项目符号列表?

我想在textview中显示项目符号列表.我可以使用子弹,但子弹不是很有吸引力,似乎没有办法定制它.我想使用默认项目符号(•)作为我的项目符号列表.有没有办法使用LeadingMarginSpan来获得我想要的效果?基本上,如果线条以子弹开头,我希望它与左边对齐,但是如果线条太长以至于它断开那么下一行向下的文本(断开的文本)应该缩进到与之后的文本相同的级别要点.

* for example
instead of this

* for example
  should look like this
Run Code Online (Sandbox Code Playgroud)

我目前的代码:

String[] bulletpoint = {some array of strings};
CharSequence allText = "";

for (int i = 0; i < bulletpoint.length; i++) {
    String text = bulletpoint[i];
    SpannableString s = new SpannableString(text + "\n");
    s.setSpan(new LeadingMarginSpan(BulletSpan.STANDARD_GAP_WIDTH) {
        @Override
        public int getLeadingMargin(boolean first) {
            return 0;
        }
        @Override
        public void drawLeadingMargin(Canvas c, Paint p, int x, int dir, int top, int baseline, int bottom, CharSequence text, int start, …
Run Code Online (Sandbox Code Playgroud)

java android textview android-xml

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