我有一个带有按钮的应用程序,用于打开和关闭BT.我在那里有以下代码;
public void buttonFlip(View view) {
flipBT();
buttonText(view);
}
public void buttonText(View view) {
Button buttonText = (Button) findViewById(R.id.button1);
if (mBluetoothAdapter.isEnabled() || (mBluetoothAdapter.a)) {
buttonText.setText(R.string.bluetooth_on);
} else {
buttonText.setText(R.string.bluetooth_off);
}
}
private void flipBT() {
if (mBluetoothAdapter.isEnabled()) {
mBluetoothAdapter.disable();
} else {
mBluetoothAdapter.enable();
}
}
Run Code Online (Sandbox Code Playgroud)
我正在调用按钮Flip,它会翻转BT状态,然后调用ButtonText,它应该更新UI.但是,我遇到的问题是,BT打开需要几秒钟 - 在这几秒钟内,BT状态未启用,使我的按钮说蓝牙关闭,即使它将在2秒内打开.
我STATE_CONNECTING在BluetoothAdapter android文档中找到了常量,但是......我根本就不知道如何使用它,成为一个新手和所有.
所以,我有两个问题:
我有一个显示托盘图标的 Electron 应用程序,单击该图标时会显示我的主窗口。在开发模式下效果很好,但是当我将它打包(到 .app 文件中)并双击 .app 文件时,没有任何菜单出现,更重要的是,图标没有出现,所以用户永远看不到我的应用程序。
我正在使用电子 React/Redux Boilerplate ( https://github.com/chentsulin/electron-react-boilerplate )
这是我的 main.dev.js 文件 - 任何猜测都值得赞赏:
import { app, BrowserWindow, Tray } from 'electron';
import MenuBuilder from './menu';
let mainWindow = null;
let tray;
if (process.env.NODE_ENV === 'production') {
const sourceMapSupport = require('source-map-support');
sourceMapSupport.install();
}
if (
process.env.NODE_ENV === 'development' ||
process.env.DEBUG_PROD === 'true'
) {
require('electron-debug')();
const path = require('path');
const p = path.join(__dirname, '..', 'app', 'node_modules');
require('module').globalPaths.push(p);
}
const installExtensions = async () => {
const …Run Code Online (Sandbox Code Playgroud) 我认为这是一个简单的正则表达式问题 - 我对正则表达式来说相当新,所以,我在这个问题上将它降低了约90%(我认为!).
我需要在文本框中匹配两个字符串(所有数字)中的一个.
1. ####-####
2. ########
Run Code Online (Sandbox Code Playgroud)
所以,第一个字符串是9个字符,中间是' - '.第二个字符串是8位数字,其中没有" - ".
我得到的是:
/[\d]{4}-??[\d]{4}/
Run Code Online (Sandbox Code Playgroud)
这很好用,但是因为我必须允许9个字符,因为第一个选项,这也验证了#########(9位数),因为前8个匹配表达式.
那么,我该怎么做?
我想也许包括[^\d]?最后会做(可选,非数字,这将使第9位数字打破匹配),但是,这没有...
谢谢阅读!