小编chR*_*NaN的帖子

查看RecyclerView上方和下方的视图

我有一个显示动态内容的RecyclerView.我想在其他视图之间显示这个RecyclerView.例如,上面显示的一个View和RecyclerView下面显示的一个View:

View
RecyclerView
View
Run Code Online (Sandbox Code Playgroud)

然而,无论我尝试什么似乎都没有工作,RecyclerView似乎占据了整个空间.我相信问题在于wrap_content问题,虽然我已经尝试了一些建议的解决方案,例如这个自定义LinearLayoutManager,但它似乎没有解决我的问题.

尝试:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout  
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <!-- AppBar works fine; no issue here -->
        <android.support.design.widget.AppBarLayout
            android:layout_height="wrap_content"
            android:layout_width="match_parent"
            android:id="@+id/app_bar_layout">

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_height="?attr/actionBarSize"
                android:layout_width="match_parent"
                app:layout_collapseMode="pin"/>

        </android.support.design.widget.AppBarLayout>

        <!-- Not displaying; Tried different views -->
        <com.chrynan.taginput.view.TextInputWrapper
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/edit_text_container">
            <AutoCompleteTextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/edit_text"/>
        </com.chrynan.taginput.view.TextInputWrapper>

        <!-- Takes up entire screen space -->
        <android.support.v4.widget.SwipeRefreshLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/swipe_refresh">

            <android.support.v7.widget.RecyclerView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/recycler_view"/>

        </android.support.v4.widget.SwipeRefreshLayout>

        <!-- Not displaying -->
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview android-design-library

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

收到响应后,XMLHttpRequest对象是否关闭?

我正在尝试使用XMLHttpRequest对象连接到服务器以在不同时间发布数据.我创建一个对象并"连接"到服务器,如下所示:

var xhr = new XMLHttpRequest();
xhr.open("post", location, true);
xhr.send(); //Is this send call needed to open the connection?
Run Code Online (Sandbox Code Playgroud)

在稍后的时间点,我称之为:

xhr.send("Something to send");
Run Code Online (Sandbox Code Playgroud)

但是,查看开发人员控制台,似乎只有初始请求通过(并成功响应).第二个请求似乎没有发送.我试图缩小可能存在的问题,所以我想:一旦收到回复,就可以关闭连接; 为什么要保持开放?所以,我的问题是:XMLHttpRequest对象连接收到响应后是否关闭?如果是这样,模拟连续打开连接的最佳方法是什么(不断重新连接?)?

javascript ajax xmlhttprequest

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

仅在Chrome中格式错误的RTCC配置

我正在使用WebRTC并意识到它并不是所有浏览器都支持.但是,Chrome和Firefox确实支持它(在较新版本中;我安装了最新版本),只要您具有某些变量的正确前缀即可.例如,我有以下PeerConnection用于跨浏览器支持:

var PeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
Run Code Online (Sandbox Code Playgroud)

现在应该支持跨浏览器,我有以下代码:

var servers = {
iceservers: [
     {url: "stun:23.21.150.121"},
     {url: "stun:stun.1.google.com:19302"}
    ]   
};
var pc = PeerConnection(servers);
Run Code Online (Sandbox Code Playgroud)

但在Chrome中,最后一行(var pc = PeerConnection(servers);)会出错.错误是:

Failed to construct 'RTCPeerConnection': Malformed RTCConfiguration"}
Run Code Online (Sandbox Code Playgroud)

显然,Chrome不喜欢PeerConnection声明中的配置参数.但我的问题是:为什么我会收到此错误,以及仅限Chrome?(FireFox工作正常)

javascript google-chrome webrtc

7
推荐指数
1
解决办法
3974
查看次数

旧版Android版中的ICS Spinner("下拉"而不是对话框)

我正在尝试模仿较新的Ice Cream Sandwhich版本的微调器,它看起来更像是一个下拉列表而不是弹出对话框.请参阅此链接以了解我在说什么.我读了一些帖子,说明要使用ActionBarSherlock来获得所需的效果.但是,这仅用于操作栏,因此,如何将ICS Spinner从操作栏中取出?

这里有一个很好的答案,但是,我觉得这有点矫枉过正?有没有更简单的方法?

java android view spinner actionbarsherlock

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

如何设置自定义按钮状态背景颜色?

我有一个包含drawable和text的按钮.我希望按钮的背景与提供的正常背景不同(最好是纯色).这很好用,我只是使用android:backgroundXML文件中的属性并相应地分配颜色.但是,我希望背景在选择或聚焦时变为不同的颜色(状态选择器).

我试图在一个带有定义颜色的drawable文件夹中创建一个选择器(在处理按钮文本时效果很好),如下所示:

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_focused="true" android:state_pressed="false" android:color="@color/green" />
        <item android:state_focused="true" android:state_pressed="true" android:color="@color/green" />
        <item android:state_focused="false" android:state_pressed="true" android:color="@color/green" />
        <item android:color="@color/white" />
    </selector> 
Run Code Online (Sandbox Code Playgroud)

并将此xml设置为android:background属性,如下所示:

android:background="@drawable/button_state"
Run Code Online (Sandbox Code Playgroud)

但这导致一个力量关闭说明:

 Caused by: android.content.res.Resources$NotFoundException: File res/drawable/button_state.xml from drawable resource ID #0x7f020070
Run Code Online (Sandbox Code Playgroud)

但资源就在那里.你能不自定义背景状态?如果可以,怎么样?或者我做错了什么?谢谢您的帮助!

java android background button

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

使用WebSockets实现WebRTC信令

为了使用对等连接点对点进行通信WebRTC API,需要实现信令.信令需要双向通信信道才能工作.WebSockets是双向沟通渠道.我想WebSockets用来实现信令,但是,我不知道如何处理这个问题.我在网上找到的所有内容都只讨论了你可以使用的不同双向通道,而不是提供如何使用它们的示例.

JavaScript用于客户端和Java服务器端.那么,我将如何实现信令使用WebSockets

javascript java java-ee websocket webrtc

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

结束两个对等点之间的 WebRTC 视频通话

我已经使用WebRTC. 我想允许一个对等方结束聊天,让另一个对等方知道聊天已经结束。聊天结束后,需要为双方执行一些代码。该PeerConnection对象有一个removeStream()应该触发onremovestream()侦听器的方法。这对于我的用例来说是完美的,但是,在调用 onremovestream() 之前,需要在对等方之间进行重新协商(提供/回答)。就我而言,这似乎很奇怪。为什么我要重新协商才断开连接?PeerConnection 对象不应该意识到没有来自其他用户的流吗?我的问题:如何结束 PeerConnection 并提醒其他用户?

javascript firefox p2p google-chrome webrtc

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

通过PeerConnection发送具有Web音频效果的MediaStream对象

我正在尝试通过getUserMedia()WebRTC的PeerConnection 发送由Web Audio API 获取和更改的音频。Web Audio API和WebRTC似乎可以执行此操作,但是我在理解如何执行此操作时遇到了麻烦。在Web Audio API中,该AudioContext对象包含一个方法createMediaStreamSource(),该方法提供了一种连接由getUserMedia()获得的MediaStream的方法。此外,还有一种createMediaStreamDestination()方法似乎可以返回带有流属性的对象。

我从getUserMedia()方法获取音频和视频。我遇到的麻烦是如何将这个流对象(包括音频和视频)传递给那些方法(例如:createMediaStreamSource())?我是否首先需要以某种方式从流(getAudioTracks)中提取音频,并找到一种将其与视频结合起来的方法?还是我按原样通过它而使视频不受影响?音频只能更改一次(在添加到PeerConnection之前)吗?

javascript html5 webrtc web-audio-api

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

单击后如何禁用ListView项?

我有一个简单的数组Strings,我是在水平显示ListViewArrayAdapter.我要做的是:当用户从中选择一个项目时ListView,使该项目不可点击并更改该项目的背景颜色.也许就像一个"灰暗"的外观.我正在研究创建一个自定义Adapter并覆盖该isEnabled(int position)方法,但我不知道我会怎么做.任何建议,建议或帮助将不胜感激!

java android listview android-arrayadapter android-listview

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

软键盘在WebView DialogFragment中不显示触摸

编辑:我已经查看了错误页面 ; 没有答案工作.它似乎是一个Android尚未解决的系统错误.

首先我提到了这个类似的问题.但是这个问题的解决方案似乎并不是我的解决方案.我有一个DialogFragment只包含一个WebView.这里的一切WebView似乎都是可以触摸的.但问题是,当我触摸表单域时,会出现光标但软键盘从不出现!

这是我在类中的onCreateDialog()方法中的代码DialogFragment:

    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
    WebView web = new WebView(getActivity());
    web.loadUrl(InternetDialog.this.url);
    web.setFocusable(true);
    web.setFocusableInTouchMode(true);
    web.requestFocus(View.FOCUS_DOWN);
    web.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                case MotionEvent.ACTION_UP:
                    if (!v.hasFocus()) {
                        v.requestFocus();
                    }
                    break;
            }
            return false;
        }
    });

    builder.setView(web);
    return builder.create();
Run Code Online (Sandbox Code Playgroud)

当我选择表单字段时,如何才能显示软键盘?

java android touch-event android-webview android-dialogfragment

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

在bootstrap中溢出导航栏

我正在试验Bootstrap 3.2.我正在尝试创建一个固定的顶部导航栏但我遇到两个问题:

  1. 导航栏与其下方的内容重叠.
  2. 导航栏似乎远离屏幕右侧.这使得导航栏中的按钮不可见,除非将窗口宽度拖动到较小的尺寸.

对于第一个问题,我通过在我的css文件中添加一个类来跟踪Bootstrap示例提示,包括html文档中Bootstrap css文件下面的这个文件,然后引用该类.

.navbar-height{
    body{padding-top: 200px;}
}

<body class="navbar-height">
Run Code Online (Sandbox Code Playgroud)

虽然,这似乎什么也没做(因为你可以看到我指定的数字真的很高,希望看到一个戏剧性的变化,但没有发生).

这是我的导航栏:

<header id="header-navigation">
        <div id="nav-bar-container">
            <nav id="nav-bar" class="navbar navbar-default navbar-fixed-top" role="navigation">
                <div id="nav-item-container" class="container-fluid">
                    <div id="drop-down" class="navbar-header">
                        <button type="button" class="btn btn-default navbar-btn navbar-toggle collapsed" data-toggle="collapse" data-target="#user-dropdown">
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                        </button>
                        <div id="home-button" class="navbar-left">
                            <a class="navbar-brand" href="#"><img alt="Brand" src=""></img></a>
                        </div>
                    </div>
                    <div id="user-dropdown" class="navbar-collapse collapse">
                        <ul class="dropdown-menu" id="dropdown-items" role="menu">
                            <li>
                                <div class="list-group-item">
                                    <div class="row-picture">
                                        <img class="circle" src="" alt="icon"></img>
                                    </div>
                                    <div class="row-content">
                                        <h4 class="list-group-item-heading">Placeholder</h4> …
Run Code Online (Sandbox Code Playgroud)

html css html5 twitter-bootstrap twitter-bootstrap-3

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

如何实现高效的Alpha-Beta修剪游戏搜索树?

我正在努力学习人工智能以及如何在程序中实现它.最简单的起点可能是简单的游戏(在这种情况下是Tic-Tac-Toe)和游戏搜索树(递归调用;不是实际的数据结构).在关于该主题的讲座上发现了这个非常有用的视频.

我遇到的问题是第一次调用算法需要花费很长的时间(大约15秒)来执行.我已经在整个代码中放置了调试日志输出,似乎它调用了算法的一部分过多次.

这是为计算机选择最佳移动的方法:

    public Best chooseMove(boolean side, int prevScore, int alpha, int beta){
    Best myBest = new Best(); 
    Best reply;

    if (prevScore == COMPUTER_WIN || prevScore == HUMAN_WIN || prevScore == DRAW){
        myBest.score = prevScore;
        return myBest;
    }

    if (side == COMPUTER){
        myBest.score = alpha;
    }else{
        myBest.score = beta;
    }
    Log.d(TAG, "Alpha: " + alpha + " Beta: " + beta + " prevScore: " + prevScore);
    Move[] moveList = myBest.move.getAllLegalMoves(board);
    for (Move m : moveList){ …
Run Code Online (Sandbox Code Playgroud)

java android artificial-intelligence game-theory alpha-beta-pruning

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