使NestedScrollView中的工具栏不可滚动

时间:2018-11-02 20:54:51

标签: android scrollview android-toolbar android-nestedscrollview nestedscrollview

我在NestedScrollView中有一个自定义NestedScrollView。 在TextViews中还有一些EdittextsTextViews

我的问题是不仅EdittextsToolbar都滚动了,Toolbar也滚动了。

滚动NestedScrollView中的Toolbar是合理的。

我想要一个自定义TextViews,其顶部绝对位置,并且可以滚动Edittexts<android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="#ffffff" android:elevation="5dp" android:minHeight="?attr/actionBarSize" app:contentInsetEnd="50dp" app:contentInsetRight="50dp" app:contentInsetLeft="0dp" app:contentInsetStart="0dp" app:contentInsetStartWithNavigation="0dp" app:popupTheme="@style/AppTheme.PopupOverlay"> </android.support.v7.widget.Toolbar> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="A long unimportant text"/> </android.support.v4.widget.NestedScrollView>

这是我正在使用的代码:

TextViews

因此,我尝试仅将EdittextsScrollView包装在 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="#ffffff" android:elevation="5dp" android:minHeight="?attr/actionBarSize" app:contentInsetEnd="50dp" app:contentInsetRight="50dp" app:contentInsetLeft="0dp" app:contentInsetStart="0dp" app:contentInsetStartWithNavigation="0dp" app:popupTheme="@style/AppTheme.PopupOverlay"> </android.support.v7.widget.Toolbar> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="A long unimportant text"/> </ScrollView> </LinearLayout> 中,例如:

Toolbar

但是它不起作用。

  

使用自定义 function get_y(json){ var parse1 = JSON.parse(json); for (var it in parse1['x']){ if (parse1['x'][it] == -2){ return parse1['y'][it]; } } } var result = get_y('{"x":[1,2,-2],"y":[0,2,4]}'); console.log(result); 非常非常重要。

2 个答案:

答案 0 :(得分:1)

尝试相对布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
    tools:context=".EmptyActivity">

    <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="#ffffff"
        android:elevation="5dp"
        android:minHeight="?attr/actionBarSize"
        app:contentInsetEnd="50dp"
        app:contentInsetLeft="0dp"
        app:contentInsetRight="50dp"
        app:contentInsetStart="0dp"
        app:contentInsetStartWithNavigation="0dp"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="A long unimportant text" />

    </ScrollView>

</RelativeLayout>

答案 1 :(得分:0)

if(this.options.enableRangeSelection) { cells.mousedown(function (e) { if(e.which == 1) { var currentDate = _this._getDate($(this)); //console.log(currentDate); if(_this.options.allowOverlap || _this.getEvents(currentDate).length == 0) { _this._mouseDown = true; _this._rangeStart = _this._rangeEnd = currentDate; _this._refreshRange(); } } }); cells.mouseenter(function (e) { //console.log(e); if (_this._mouseDown) { var currentDate = _this._getDate($(this)); if(!_this.options.allowOverlap) { var newDate = new Date(_this._rangeStart.getTime()); if(newDate < currentDate) { var nextDate = new Date(newDate.getFullYear(), newDate.getMonth(), newDate.getDate() + 1); while(newDate < currentDate) { if(_this.getEvents(nextDate).length > 0) { break; } newDate.setDate(newDate.getDate() + 1); nextDate.setDate(nextDate.getDate() + 1); } } else { var nextDate = new Date(newDate.getFullYear(), newDate.getMonth(), newDate.getDate() - 1); while(newDate > currentDate) { if(_this.getEvents(nextDate).length > 0) { break; } newDate.setDate(newDate.getDate() - 1); nextDate.setDate(nextDate.getDate() - 1); } } currentDate = newDate; } var oldValue = _this._rangeEnd; _this._rangeEnd = currentDate; if (oldValue.getTime() != _this._rangeEnd.getTime()) { _this._refreshRange(); } } }); /* $(window).mouseup(function (e) { if (_this._mouseDown) { _this._mouseDown = false; _this._refreshRange(); var minDate = _this._rangeStart < _this._rangeEnd ? _this._rangeStart : _this._rangeEnd; var maxDate = _this._rangeEnd > _this._rangeStart ? _this._rangeEnd : _this._rangeStart; _this._triggerEvent('selectRange', { startDate: minDate, endDate: maxDate, events: _this.getEventsOnRange(minDate, new Date(maxDate.getFullYear(), maxDate.getMonth(), maxDate.getDate() + 1)) }); } }); */ } (和ScrollView)将允许给他们添加多个直接子代,但是为了使其正常工作,他们必须有一个直接子代。因此,将NestedScrollView的内容包装在ScrollView LinearLayout中:

wrap_content