小编acr*_*spo的帖子

Haskell:类型a - > a的函数示例,除了标识

我刚刚开始玩Haskell ...我想写一个相同类型的身份的函数.显然,不等于它.那会是这样的,

myfunction :: a -> a

我无法想出一个示例,其中参数和返回类型是相同的,几乎可以是任何东西(这排除了使用Haskell的类型类的可能性).

haskell types type-inference type-variables

20
推荐指数
4
解决办法
1825
查看次数

如何使用Lint Option StopShip使Grade发布版本失败?

我已经阅读了很多关于StopShipAndroid Lint Check和Gradle支持的内容

我想使用SO中的一些已经提到的,而不是TODO或FIXME注释,使用它来确保用于开发/调试/测试的代码块不能达到生产.

为此,我想做两件事: - 启用StopShip检查,因为它默认是禁用 - 将严重性从警告(默认)更改为错误

(假设我们abortOnError true在gradle配置上使用).

我没能做到这一点!无论我尝试什么,如果我// STOPSHIP在代码中添加注释,android构建都不会失败.这很奇怪,因为在textEditor中它突出显示为错误,如果我运行Lint检查(Analyze> Inspect Code ...),它将被列为问题之一.

这就是我在我的尝试中所做的 build.gradle

lintOptions {
    checkReleaseBuilds true
    // Or, if you prefer, you can continue to check for errors in release builds,
    // but continue the build even when errors are found:
    abortOnError true
    enable 'StopShip'
    error 'StopShip'
}
Run Code Online (Sandbox Code Playgroud)

我还尝试在"文件">"设置">"项目设置">"检查"(或Android中的Android Studio>"首选项">"检查")中更改我的Android Studio首选项.在这里,我检查Code contains STOPSHIP marker并将严重性更改为错误,但仍然没有.

这是我的lint.xml样子:

<?xml …
Run Code Online (Sandbox Code Playgroud)

android gradle android-lint build.gradle android-gradle-plugin

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

Android TextInputLayouts 在片段事务中返回时丢失文本/内容

我已经搜索了一段时间,但我认为大多数报告的错误(并且有很多)android.support.design.widget.TextInputLayout与这个略有不同。至少,我已经解决了大多数其他错误,但在这个问题上很挣扎。我目前Fragment在我的活动中有几个TextInputLayout这样的

<android.support.design.widget.TextInputLayout
    android:id="@+id/input1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint1"
        android:inputType="numberSigned" />
</android.support.design.widget.TextInputLayout>

<android.support.design.widget.TextInputLayout
    android:id="@+id/input2
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint2"
        android:inputType="numberSigned"/>
</android.support.design.widget.TextInputLayout>

<android.support.design.widget.TextInputLayout
    android:id="@+id/input3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint3"
        android:inputType="numberSigned">
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

并且,在满足一些外部条件(不重要)之后,我打开并显示隐藏上述片段的另一个片段(100% 屏幕)。如果您想知道这个新片段要求我在特定情况下需要的一些额外字段。这是处理新创建的代码Fragment

Fragment2 fragment2 = new Fragment2();
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction()
                                .replace(((ViewGroup) getView().getParent()).getId(), fragment2);
transaction.addToBackStack(Fragment1.class.getSimpleName());
transaction.commit();
Run Code Online (Sandbox Code Playgroud)

但问题是,当返回(按下后退按钮、工具栏/操作栏主页按钮等)到第一个片段时。我所有的人都TextInputLayouts失去了插入他们的文字。这真的很烦人,而且在专门使用 时并没有发生EditText,就像我们之前的 Material Design 过渡一样。

此外,如果不是使用 a 替换片段FragmentTransaction,而是开始一个新的Activity. 不幸的是,这并不是我们真正想要的。我们不应该需要做这种解决方法。

有任何想法吗?有人遇到过这种情况吗?

android android-fragments fragmenttransaction material-design android-textinputlayout

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

如何使用foldr编写此函数?

我有这个简单的函数,它返回列表的邻接元素的对列表.

adjacents :: [a] -> [(a,a)]
adjacents (x:y:xs) = [(x,y)] ++ adjacents (y:xs)
adjacents (x:xs) = []
Run Code Online (Sandbox Code Playgroud)

我在尝试编写邻接时遇到问题foldr.我做了一些研究,但似乎没有什么能给我一个暗示.怎么做到呢?

recursion haskell functional-programming fold higher-order-functions

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

Haskell:"通用"类型的表达

在与此问题中显示的问题类似的问题中,是否可以使用"通用"类型的Haskell表达式?就像是,

myExpression :: a

我是Haskell的新手,但从我所看到的这一点无法实现.

haskell types type-inference variable-types

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

Android支持库浮动操作按钮异常

我遇到了一个奇怪的行为android.support.design.widget.FloatingActionButton.我已经google了一下,但没有提到这个组件的这种错误.

这只发生在我StrictMode启用android的情况下.我得到以下异常:

CoordinatorLayout? Default behavior class android.support.design.widget.FloatingActionButton$a could not be instantiated. Did you forget a default constructor?
java.lang.InstantiationException: can't instantiate class android.support.design.widget.FloatingActionButton$a; no empty constructor
        at java.lang.Class.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Class.java:1130)
        at android.support.design.widget.CoordinatorLayout.a(CoordinatorLayout.java:503)
        at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:579)
        at android.view.View.measure(View.java:16831)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5245)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
        at android.view.View.measure(View.java:16831)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5245)
        at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1410)
        at android.widget.LinearLayout.measureVertical(LinearLayout.java:695)
        at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
        at android.view.View.measure(View.java:16831)
        at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:868)
        at android.view.View.measure(View.java:16831)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5245)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
        at android.view.View.measure(View.java:16831)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5245)
        at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1410)
        at android.widget.LinearLayout.measureVertical(LinearLayout.java:695)
        at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
        at android.view.View.measure(View.java:16831)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5245)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) …
Run Code Online (Sandbox Code Playgroud)

android android-support-library floating-action-button

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