小编Nxt*_*xt3的帖子

将菜单溢出图标设置为白色

我有一个虚拟应用程序,我正在制作,以获得Android开发的悬念.我设法在我的工具栏上显示一个菜单溢出图标,但我似乎无法弄清楚如何将其更改为白色.

我正在使用工具栏小部件(没有支持库;这是我不想做的事情).

这是我有的: 在此输入图像描述

我只想让溢出菜单变白.

styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>

    <item name="android:colorPrimary">@color/primary</item>
    <item name="android:colorPrimaryDark">@color/primary_dark</item>
    <item name="android:colorAccent">@color/accent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

android android-5.0-lollipop android-toolbar

12
推荐指数
2
解决办法
9168
查看次数

如何捕获管道?

如何使用lettable运算符和管道执行以下操作?

    this.httpClient
      .get(url)
      .map((res: any) => {
        const events = res.eventList;
        return events.map(e => new EventLogModel(e));
      })
      .catch(this.handleError);
Run Code Online (Sandbox Code Playgroud)

我试过这个,但是我无法开始catchError工作catchError does not exist on type Observable<any>:

    this.httpClient
      .get(url)
      .pipe(
        map((res: any) => {
          const events = res.eventList;
          return events.map(e => new EventLogModel(e));
        })
      )
      .catchError(this.handleError);
Run Code Online (Sandbox Code Playgroud)

另外,我认为catch并且catchError是一样的,对吗?我这样导入它:

import { map, catchError } from 'rxjs/operators';

但我不确定这是否是正确使用的操作符.

observable rxjs angular rxjs-lettable-operators

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

使用单一命令行编译和构建Java(Linux)

有没有办法以这样的方式设置别名,以便我可以输入命令,然后在一行中输入参数?

例如,而不是

javac Program.java && java Program
Run Code Online (Sandbox Code Playgroud)

我可以去

newcommand Program.java //or "newcommand Program", whichever is easier
Run Code Online (Sandbox Code Playgroud)

这将执行与上面的行相同的命令.

java linux command-line alias

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

在工具栏中显示菜单溢出按钮

我已经创建了一个Toolbarfor Lollipop,但我似乎无法弄清楚如何在工具栏中添加溢出按钮.我不打算使用v7 appcompat工具栏,因为我想明确使用Toolbar小部件.我希望它看起来像这样:

在此输入图像描述

main_activity.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

<Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="112dp"
    android:elevation="4dp"
    android:layout_alignParentTop="true"
    android:minHeight="?android:attr/actionBarSize"
    android:background="?android:attr/colorPrimary"
    android:gravity="bottom"
    android:paddingBottom="16dp"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

主要课程

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_quotebook);


    getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
    getWindow().setStatusBarColor(getResources().getColor(R.color.primary_dark));
    getWindow().setNavigationBarColor(getResources().getColor(R.color.primary_dark));

    initToolbar();

}

private void initToolbar() {
    mToolbar = (Toolbar) findViewById(R.id.toolbar);
    mToolbar.setTitleTextColor(Color.WHITE);
    mToolbar.setTitle(R.string.app_shortname);
    mToolbar.showOverflowMenu();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_overflow, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will …
Run Code Online (Sandbox Code Playgroud)

android android-5.0-lollipop android-toolbar

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

Git自动完成自定义bash功能

在我看来.bash_profile,我有很多git的功能快捷方式.例如:

function gitpull() {
    branch="$1"

    if [[ -z $branch ]]; then
        current_branch=`git symbolic-ref -q --short HEAD`
        git pull origin $current_branch;
    elif [[ -n $branch && $branch == "m" ]]; then
        git pull origin master;
    else
        git pull origin $branch;
    fi;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我在终端中键入它时,我希望它能自动完成git分支.我该怎么做呢?(我已经在使用了.git-completion.bash)

git bash bash-completion

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

无法在Espresso测试中获取ApplicationContext

运行Espresso测试时,我不断收到以下错误:

Attempt to invoke virtual method 'android.content.Context android.app.Instrumentation.getTargetContext()' on a null object reference

@RunWith(AndroidJUnit4.class)
public class TestLogin extends AndroidTestCase {

    @Rule
    public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(MainActivity.class);

    @Test
    public void testVerifyCredentials() {
        Context context = this.getContext().getApplicationContext();
        SharedPreferences prefs = context.getSharedPreferences("current.user", Context.MODE_PRIVATE);
        assertTrue(prefs.getBoolean("IsLoggedIn", false));
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这个InstrumentationTestCase,然后尝试做,Context context = this.getInstrumentation().getTargetContext().getApplicationContext();但仍然导致NPE.

我究竟做错了什么?

SessionManager我在我的应用程序中使用的类来管理SharedPrefs:

包com.nullpointexecutioners.buzzfilms.helpers;

import android.content.Context; import android.content.SharedPreferences;

import com.firebase.client.Firebase; import com.nullpointexecutioners.buzzfilms.Major;

/**
 * Helper class for managing a session (i.e. persistence across launches of the app …
Run Code Online (Sandbox Code Playgroud)

testing android android-espresso

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

在 Canvas 周围绘制边框

我正在编写一个(基本上)模仿 MS Paint 的应用程序;可以选择铅笔工具,画一条笔画为3的线;您可以选择标记工具并绘制一条笔划为 7 等的线。

我想在我的画布周围画一个边框。这很简单,是的。但是,使用我拥有的其他方法,我能想到的唯一实现方法是在绘制边界后进行大量抽查。是否有一种有效的方法可以在不与已选择工具的笔触/颜色冲突的情况下执行此操作?

这是drawBorder()方法:

private void drawBorder(GraphicsContext g) {
    final double canvasWidth = g.getCanvas().getWidth();
    final double canvasHeight = g.getCanvas().getHeight();

    g.setStroke(Color.BLACK);
    g.setLineWidth(4);
    g.strokeRect(0, 0, canvasWidth, canvasHeight);

    //sets the color back to the currently selected ColorPicker color
    g.setStroke(selectedColor);
}
Run Code Online (Sandbox Code Playgroud)

但是,此代码将与我的clear()操作发生冲突

clearTool.setOnAction(e -> {
            graphics.clearRect(0, 0,
                canvas.getWidth(), canvas.getHeight());
            drawBorder(graphics);
        });
Run Code Online (Sandbox Code Playgroud)

因为在清除 Canvas 后,笔划线宽将为 4。这是一个问题,因为如果我将铅笔工具作为所选工具(笔划线宽为 3),它将为 4,直到我选择另一个工具并切换回来到铅笔工具;此外,如果我在按下清除按钮时选择了标记工具,同样的概念也适用(笔画线宽为 4,直到我选择另一个工具,然后重新选择标记工具)。

我试图避免必须为每个工具设置检查,并让它每次都重置笔划的线宽——虽然这可行,但似乎很复杂。

java javafx canvas

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

确定Espresso是否无法单击按钮

在做

onView(withId(R.id.login_button)).check(matches(isClickable()));
Run Code Online (Sandbox Code Playgroud)

对于验证按钮是否可单击很有用。如何确认按钮不可点击?

编辑:就像我说的,它只会告诉我是否isClickable。我正在寻找一种方法来验证它是否不可点击。

android android-espresso

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

从表盘打开手机上的URL

我有一个我已经创建的表盘,我正在考虑在手表设置中添加一个"关于"屏幕(在手表上).此屏幕将显示当前版本并显示一个按钮以打开指向更改日志的URL.我希望用户能够点击手表上的按钮,并让手机打开指定的URL.

如果没有我创建移动伴侣应用程序,这可能吗?

android wear-os

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

可以创建抽象属性吗?

我在 Child 类中有一个如下所示的属性:

formModel = {
    motive: 0,
    coop: 0,
    leadership: 0,
    teamwork: 0,
    community: 0,
    professional: 0,
    role_model: 0,
    supportive: 0,
    problem_solving: 0
};
Run Code Online (Sandbox Code Playgroud)

但是在其他子类中,这个属性是不同的。

formModel = {
    motive: 0,
    coop: 0,
    leadership: 0,
    teamwork: 0,
    community: 0,
    professional: 0,
    communication: 0,
    respect: 0,
    morale: 0,
    role_model: 0,
    supp_enviro: 0
};
Run Code Online (Sandbox Code Playgroud)

属性的顺序会发生变化,名称也会发生变化。

我想abstract在其父类中声明此属性的一个版本。这可能吗?我public abstract formModel: Object;在父母身上没有这样的运气。

编辑:

这是我得到的错误:

vendor.bundle.js:40839 Uncaught Error: Unexpected value 'undefined' declared by the module 'AppModule'
    at syntaxError (vendor.bundle.js:40839)
    at vendor.bundle.js:54719
    at …
Run Code Online (Sandbox Code Playgroud)

typescript angular

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