小编Igo*_*gor的帖子

如何在Android Studio中垂直居中ConstraintLayout内容?

我正在尝试Android Studio,我试图将垂直内容集中在一起ConstraintLayout,但没有成功.我试图使用android:gravity="center"并删除了app:layout_editor_absoluteY所有元素,但没有发生......所以,我怎样才能集中这个?

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@layout/gradient"
    android:gravity="center"
    tools:context="com.test.test.MainActivity"
    tools:layout_editor_absoluteY="81dp"
    tools:layout_editor_absoluteX="0dp">

    <EditText
        android:id="@+id/txtEmail"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:ems="10"
        android:hint="@string/lblEmail"
        android:inputType="textEmailAddress"
        android:textColorHint="@color/colorGray"
        android:background="@color/colorWhite"
        android:padding="15dp" />

    <EditText
        android:id="@+id/txtSenha"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="8dp"
        android:ems="10"
        android:hint="@string/lblSenha"
        android:inputType="textPassword"
        android:textColorHint="@color/colorGray"
        android:background="@color/colorWhite"
        android:padding="15dp"
        app:layout_constraintTop_toBottomOf="@+id/txtEmail" />

    <Button
        android:id="@+id/btnEntrar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:text="@string/lblEntrar"
        app:layout_constraintTop_toBottomOf="@+id/txtSenha" />

</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-activity

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

使用htaccess隐藏目录

我正在尝试隐藏usersurl 的目录(例如:):meusite.com.br/users/teste但到目前为止还没有成功.这样通过访问meusite.com.br/teste显示文件夹里面的内容teste,如果访问URL meusite.com.br/users/teste/users/被拆除,只展出meusite.com.br/teste.

我试过了:

RewriteCond %{REQUEST_URI} !^/users
RewriteRule (.*) /users/$1 [QSA,L]
Run Code Online (Sandbox Code Playgroud)

但我没有成功.我也尝试过:

RewriteCond %{REQUEST_URI} !^/users
RewriteRule ^/?([^/]+)$ /users/$1 [L]
Run Code Online (Sandbox Code Playgroud)

但没有奏效.

为了更好地理解,它遵循站点文件夹的部分结构:

??? users
|   ??? teste
|   |   ??? index.html
|   ??? outroteste
|       ??? index.html
??? .htaccess
??? index.php
Run Code Online (Sandbox Code Playgroud)

正如我的文件'htaccess`已经:

<IfModule mod_rewrite.c>
    RewriteEngine On

    # Rewrites the requested http to https.
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

    # Hide GET variables link.
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond …
Run Code Online (Sandbox Code Playgroud)

.htaccess mod-rewrite url-rewriting pretty-urls

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

如何使用Ionic 3和Angular 4创建可重用的组件

我想为我的应用创建一个可重用的标头.所以我做了:

创建组件(app-header):

app-header.ts:

import { Component } from '@angular/core';

@Component({
  selector: 'app-header',
  templateUrl: 'app-header.html'
})
export class AppHeaderComponent {

  text: string;

  constructor() {
    console.log('Hello AppHeaderComponent Component');
    this.text = 'Hello World';
  }

}
Run Code Online (Sandbox Code Playgroud)

那有HTML:

app-header.html:

<div>
  {{text}}
</div>
Run Code Online (Sandbox Code Playgroud)

而且我已经添加AppHeaderComponentdeclarations@NgModule:

...

import { AppHeaderComponent } from '../components/app-header/app-header';

@NgModule({
  declarations: [
    MyApp,
    TabsPage,
    AppHeaderComponent
  ],

...
Run Code Online (Sandbox Code Playgroud)

我正在使用TabsTemplate,我想在每个标签中添加这个组件,所以,我做了feed.html(我的一个标签):

<app-header></app-header>

<ion-content>

...
Run Code Online (Sandbox Code Playgroud)

但它给出了以下错误:

未捕获错误:模板解析错误:'app-header'不是已知元素:1.如果'app-header'是Angular组件,则验证它是否是此模块的一部分.2.如果'app-header'是Web组件,则将'CUSTOM_ELEMENTS_SCHEMA'添加到此组件的'@ NgModule.schemas'以禁止显示此消息.(" - >

[错误 - >]

所以,我改为app-header.ts:

import { …
Run Code Online (Sandbox Code Playgroud)

typescript ionic-framework ionic2 ionic3 angular

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

如何在我的 Angular 4 项目中导入 wavesurfer.js?

我在 Ionic 3 应用程序中使用Video.js来处理视频和音频,一切正常。但是现在,我想将Video.js Wavesufer 插件用于音频。

我通过 npm 安装了插件:

npm install videojs-wavesurfer --save (plugin)
npm install wavesurfer.js --save (dependency)
Run Code Online (Sandbox Code Playgroud)

并将它们导入到我的 component.ts 中:

import WaveSurfer from 'wavesurfer.js';
import VideojsWavesurfer from 'videojs-wavesurfer';
Run Code Online (Sandbox Code Playgroud)

我调用videojs函数来初始化播放器:

ngAfterViewInit() {
    if (this.audio) {
        this.audio = this.audio.nativeElement;

        let audioJS = videojs(this.audio,
          {
            fluid: true,
            plugins: {
              wavesurfer: {
                src: this.audioSource,
                msDisplayMax: 10,
                debug: true,
                waveColor: 'grey',
                progressColor: 'black',
                cursorColor: 'black',
                hideScrollbar: true
              }
            }
          }, () => { }
        );
      }
  } …
Run Code Online (Sandbox Code Playgroud)

video.js typescript wavesurfer.js ionic3 angular

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

使用Socket.io处理多个选项卡

我在服务器端使用以下代码,一切正常。但是,我想保持n选项卡之间的相同连接,因为当我打开一个新选项卡时,看起来好像已经与第一个选项卡断开连接了……那么,如何保持相同的连接?

client.js

socket.emit("connected", {user: inputUser.val()};
Run Code Online (Sandbox Code Playgroud)

app.js

var express = require("express"),
app = express(),
http = require("http").Server(app),
io = require("socket.io")(http),
users = {};

io.on("connection", function(socket) {
    socket.on("connected", function(data) {
        socket.user = data.user;

        users[socket.user] = socket;

        updateUsers();
    });

    function updateUsers() {
        io.emit("users", Object.keys(users));
    }

    socket.on("typing", function(data) {
        var userMsg = data.user;

        if(userMsg in users) {
            users[userMsg].emit("typing", {user: socket.user});
        }
    });

    socket.on("disconnect", function(data) {
        if(!socket.user) {
            return;
        }

        delete users[socket.user];

        updateUsers();
    });

});

var port = Number(process.env.PORT || 8000);

http.listen(port, function() …
Run Code Online (Sandbox Code Playgroud)

javascript sockets real-time node.js socket.io

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

获取部分进度条的宽度单击并进行秒的计算

我一直在使用Youtube JavaScript API V3开发自定义播放器.这是我的代码的一部分:

index.html我:

<div class="player_music-progressBar" id="player_music-progressBar"><div></div></div>
Run Code Online (Sandbox Code Playgroud)

styles.css:

.player_music-progressBar {
    position: relative;
    float: left;
    width: 100%;
    height: 6px;
    background-color: #444444;
    margin-top: 1px;
    cursor: pointer;
}

.player_music-progressBar div {
    height: 100%;
    width: 0px;
    background-color: #ccc;
}
Run Code Online (Sandbox Code Playgroud)

而且,在我JS这里是进行条形动画的功能:

function convert_time(seconds) {
    var s = seconds,
    h = Math.floor(s/3600);
    s -= h*3600;
    var m = Math.floor(s/60);
    s -= m*60;

    if(seconds >= "3600") {
        return "0" + h + ":" + (m < 10 ? "0" + m …
Run Code Online (Sandbox Code Playgroud)

javascript youtube-javascript-api progress-bar youtube-iframe-api

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

在JavaFX中更改场景而不调整窗口大小

我正在尝试更改JavaFX上的场景,但不改变窗口大小.但是,当我设置stage.setScene(scene2);窗口大小减小时,我想保持两个场景最大化.我试过了stage.setMaximized(true),stage.setScene(scene2);但结果是一样的.

我该如何解决?

我的代码:

package controller;

import java.io.IOException;

import javafx.animation.FadeTransition;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.util.Duration;

public class App extends Application {  
    @Override
    public void start(Stage stage) throws Exception {
        Parent root = FXMLLoader.load(getClass().getResource("../view/fxml/Loading.fxml"));

        Scene scene = new Scene(root);

        stage.setScene(scene);
        stage.setTitle("Project");
        stage.setMaximized(true);
        stage.show();

        FadeTransition fadeIn = new FadeTransition(Duration.seconds(1), root);
        fadeIn.setFromValue(0);
        fadeIn.setToValue(1);

        FadeTransition fadeOut = new FadeTransition(Duration.seconds(1), root);
        fadeOut.setFromValue(1);
        fadeOut.setToValue(0);

        fadeIn.play();

        fadeIn.setOnFinished((e) -> {
            fadeOut.play();
        });

        fadeOut.setOnFinished((e) -> {
            try …
Run Code Online (Sandbox Code Playgroud)

java javafx scene

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

Ionic 3中的Android SDK Platform 26许可证错误

我正试图在我的Android设备上运行我的Ionic 3项目ionic cordova run android --device --stacktrace,但是,我有以下输出:

...

在C:\ Android\android-sdk\licenses中检查软件包Android SDK Platform 26的许可证警告:不接受软件包Android SDK Platform 26的许可证.

FAILURE:构建因异常而失败.

  • 出了什么问题:配置根项目'android'时出现问题.

您尚未接受以下SDK组件的许可协议:[Android SDK Platform 26].在构建项目之前,您需要接受许可协议并使用Android Studio SDK Manager完成缺少的组件的安装.或者,要了解如何将许可协议从一个工作站转移到另一个工作站,请访问 http://d.android.com/r/studio-ui/export-licenses.html

阅读其他问题,人们建议使用Android Studio SDK管理器并安装最新版本,因为那时我会被问及许可证并且必须接受它们,所以我安装了Android 8.0(Oreo)和Android API 27,这是最后一个但是,在任何时候我都没有询问任何许可证,并且错误仍然存​​在.我的设备通过USB电缆连接到PC(Windows 10),启用编程器模式以及USB调试.我该怎么做才能解决这个问题?

我的SDK管理员:

我的SDK经理

更新:

我已经sdkmanager --licensesC:\Android\sdk\tools\binC:\Users\User\AppData\Local\Android\sdk\tools\bin文件夹中运行了命令,并且接受了所有丢失的许可证,但错误仍在继续.

我的科尔多瓦- Android版本在package.json:"cordova-android": "~6.3.0"config.xml:<engine name="android" spec="~6.3.0" />(与已经尝试过6.3.0,并6.2.0没有成功)

发生错误后:

在C:\ Android\android-sdk\licenses中检查软件包Android SDK Platform 26的许可证警告:不接受软件包Android SDK Platform 26的许可证.

但我没有许可证文件夹C:\Android\android-sdk,只是在C:\Android\sdk.我如何做离子检查许可证真正的文件夹?

ionic info …

sdk android cordova ionic-framework ionic3

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

选择每个对话的最新消息

我有两张桌子:

聊天from仅发送第一条消息的人)

id | id_from | id_to
1  | 1       | 2
2  | 1       | 3
3  | 3       | 2
4  | 4       | 1
Run Code Online (Sandbox Code Playgroud)

信息

id | content | date                | id_chat | id_from | id_to
1  | hi      | 2017-10-04 23:14:41 | 1       | 1       | 2
2  | hello   | 2017-10-04 23:15:03 | 1       | 2       | 1
3  | heey    | 2017-10-04 23:40:00 | 4       | 4       | 1
Run Code Online (Sandbox Code Playgroud)

我想得到每次对话的最后一条消息。

我尝试过( …

mysql sql select chat group-by

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

求和数返回NaN

我想在div里面做一些数字,所以,我做了:

$(document).ready(function() {
    var numbers, sumNumbers;

    $(".item").each(function() {
  	numbers = $(this).children().text();
        numbers = +numbers;
    
        sumNumbers += numbers;
    });
  
    console.log(sumNumbers);
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="item">
  <span class="itemNum">0</span>
</div>

<div class="item">
  <span class="itemNum">2</span>
</div>

<div class="item">
  <span class="itemNum">1</span>
</div>
Run Code Online (Sandbox Code Playgroud)

但是,同样numbers将从文本转换为数字与+numbers返回NaN,为什么?我已经尝试Number(numbers)过,但结果是一样的.

javascript each jquery nan

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