小编Jon*_*nik的帖子

修复导航抽屉标题更改方向更改?

在我的应用程序上更改方向后,操作栏中的标题会从导航栏中选定的片段标题更改为应用程序的标题.

抽屉式导航栏的示例应用程序保留它的标题与方向的变化,因为它的片段是主要活动的一个子类,并拥有这行代码

getActivity().setTitle(planet);
Run Code Online (Sandbox Code Playgroud)

现在我有点新手,所以我不知道如何保留标题,并实现代码,你们可以帮助吗?

万一你想看看,这里是PlanetFragment的子类

public static class PlanetFragment extends Fragment {
    public static final String ARG_PLANET_NUMBER = "planet_number";

    public PlanetFragment() {
        // Empty constructor required for fragment subclasses
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_planet, container, false);
        int i = getArguments().getInt(ARG_PLANET_NUMBER);
        String planet = getResources().getStringArray(R.array.planets_array)[i];

        int imageId = getResources().getIdentifier(planet.toLowerCase(Locale.getDefault()),
                        "drawable", getActivity().getPackageName());
        ((ImageView) rootView.findViewById(R.id.image)).setImageResource(imageId);
        getActivity().setTitle(planet);
        return rootView;
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-actionbar navigation-drawer

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

Java 多线程访问静态变量

如何同时从多个线程访问静态变量。

如果我有一个类

Class A {
    public static boolean FLG=false;
    .....................
    ....................
}
Run Code Online (Sandbox Code Playgroud)

我需要从线程 1 中访问值,例如

....................
public void run() {
    boolean t1=A.FLG;
    ..................
}
Run Code Online (Sandbox Code Playgroud)

从线程 2 我需要设置值

....................
public void run() {
    A.FLG=true;
    ..................
}
Run Code Online (Sandbox Code Playgroud)

这会导致内存冲突吗?。如果是这样,处理这种情况的推荐方法是什么?

java static multithreading

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

Android - 基于构建类型的gradle动态配置

我正在开发一个连接到我的服务器的Android应用程序.像往常一样,我的服务器在开发期间是在笔记本电脑上,它的ip正在改变 我想检测我的开发机器的IP地址,即

InetAddress.getLocalHost().getCanonicalHostName()
Run Code Online (Sandbox Code Playgroud)

...并将其注入android strings.xml文件,以便我的Android应用程序在开发过程中连接到正确的ip.

我正在努力确定从哪里获取信息运行什么类型的buildType以后每次都可以执行:

android { 
    buildTypes.each { buildType ->
        if(buildType.name == 'debug') {
            def host = InetAddress.getLocalHost().getCanonicalHostName()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

假设现在确定该主机.但是我仍然不确定如何替换strings.xml文件中的host以连接到正确的主机.我无法调用processResources,因为抛出以下异常:

Could not find method processResources() for argument [build_11onjivreh0vsff0acv5skf836$_run_closure3@cbbe2cf] on project
Run Code Online (Sandbox Code Playgroud)

任何建议或源代码将不胜感激.

android gradle android-gradle-plugin

4
推荐指数
2
解决办法
6231
查看次数

从正则表达式中提取文本?

我试图在正则表达式中获得一些匹配文本的结果,但它似乎不起作用.有谁知道可能会出错?

import re
text = "I want to match anything in <angle brackets>"
match = re.search("\<(?P<brackets>[^\>]+)>", text)
if match:
    print (match.group('brackets'))
Run Code Online (Sandbox Code Playgroud)

这没有打印,即找不到匹配.

python regex

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

如何显示半透明活动?

如何在我的活动之上创建半透明活动以显示帮助内容?我看过许多应用程序在半透明屏幕上显示帮助内容(例如,当显示微调器下拉列表时,屏幕的其余部分变暗,投影下拉.我想创建那个昏暗的屏幕)

transparency android android-activity

4
推荐指数
2
解决办法
3047
查看次数

更改默认文本颜色并仍显示不同颜色的禁用菜单项

随着Theme.Holo.Light作为基本主题,设计师注意到,默认的文本颜色不是黑色,而是深灰色(#505050).我们想把它改成黑色.

在此输入图像描述

寻找一种简单的方法将应用程序中的默认值更改为黑色,我发现这有效:

<resources>    
    <style name="MyAppTheme" parent="android:Theme.Holo.Light">
        <item name="android:textColor">@android:color/black</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

现在,问题是,这也改变了Action Bar溢出菜单中禁用项目的颜色.如何在仍然禁用菜单项看起来"禁用"时覆盖默认文本颜色?

菜单应如下所示,但android:textColor如上所述,它会将所有项目更改为黑色.

在此输入图像描述

我与实验textColorPrimaryInverse,textColorPrimaryDisableOnly,textColorPrimaryInverseDisableOnlydisabledAlpha,但这些似乎并没有影响到溢出菜单.

android android-menu android-theme android-actionbar

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

实现浮动内联标签(使用EditText?)

Google的Material Design文本字段指南显示了文本输入的浮动标签:

使用浮动内联标签时,当用户使用文本输入字段时,标签会移动到字段上方浮动.

简单的问题:实现浮动标签的最佳方式是什么(在Android 5.0+上)?您可以轻松地使用标准组件EditText,如果是这样,怎么做?或者使用第三方库更简单?

android android-edittext material-design android-5.0-lollipop

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

如何从Instant和时间字符串构造ZonedDateTime?

给定一个对象Instant,time string表示特定时间ZoneId,如何构造一个ZonedDateTime具有日期部分(年,月,日)的对象,从给定ZoneId的时刻和给定的时间部分time string

例如:

给定Instant值1437404400000(相当于20-07-2015 15:00 UTC),时间字符串21:00,以及ZoneId代表Europe/London的对象,我想构造一个ZonedDateTime相当于20-07的对象-2015 21:00欧洲/伦敦.

java java-8 java-time zoneddatetime

4
推荐指数
2
解决办法
5983
查看次数

在Scala中进行读取和写入以获取自定义类的列表

所以我的项目中有两个课程

case class Item(id: Int, name: String)
Run Code Online (Sandbox Code Playgroud)

case class Order(id: Int, items: List[Item])
Run Code Online (Sandbox Code Playgroud)

我正在尝试为Order创建读写属性,但是我收到编译器错误说:

"找不到unapply或unapplySeq函数"

在我的控制器中,我有以下内容:

implicit val itemReads = Json.reads[Item]
implicit val itemWrites = Json.writes[Item]
implicit val listItemReads = Json.reads[List[Item]]
implicit val listItemWrites = Json.writes[List[Item]]
Run Code Online (Sandbox Code Playgroud)

代码工作的itemReadsitemWrites而不是底部的两个.谁能告诉我哪里出错了,我是Play框架的新手.

感谢您的时间.

json scala playframework

4
推荐指数
2
解决办法
9961
查看次数

如何让TalkBack自动读取TextView错误信息?

我目前正在使我的应用程序可访问,我的EditTexts有问题:

在每个EditText中,用户的输入在某个时刻被验证(例如,在按下按钮之后),如果输入无效,我会显示错误editText.setError("message").问题是如果TalkBack打开,它将不会自动聚焦并读取错误.此外,由于我无法得到错误的视图,我不能要求TalkBack通过它来关注它sendAccessibilityEvent.

我会很感激有关如何在仍然使用时解决此问题的任何想法editText.setError().

编辑1为@Abhishek V解决方案添加了代码:

public class BaseEditText extends EditText {

    ...
    ...

    @Override
    public void setError(CharSequence error) {
        super.setError(error);
        announceForAccessibility(error);
    }
}
Run Code Online (Sandbox Code Playgroud)

android accessibility textview talkback android-accessibility

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