小编jli*_*ely的帖子

MPAndroidChart - 堆积条上的圆角

我需要创建一个带有堆叠条形的图表,并且这些条形需要四舍五入。到目前为止,我已经成功地使条形变圆,但如果它们没有堆叠。如果堆叠,那么每个条都是圆形的,这是我不需要的。无论是否堆叠,我都需要将条形变圆。

这是它的外观: stacked_rounded

这是它目前的样子: 堆叠不

我已经制作了我的自定义渲染器并覆盖了该drawDataSet方法,但是无论堆栈如何,我都无法弄清楚如何将顶部和底部四舍五入。

 @Override
protected void drawDataSet(Canvas c, IBarDataSet dataSet, int index) {

    Transformer trans = mChart.getTransformer(dataSet.getAxisDependency());

    mShadowPaint.setColor(dataSet.getBarShadowColor());

    float phaseX = mAnimator.getPhaseX();
    float phaseY = mAnimator.getPhaseY();


    // initialize the buffer
    BarBuffer buffer = mBarBuffers[index];
    buffer.setPhases(phaseX, phaseY);
    buffer.setDataSet(index);
    buffer.setBarWidth(mChart.getBarData().getBarWidth());
    buffer.setInverted(mChart.isInverted(dataSet.getAxisDependency()));

    buffer.feed(dataSet);

    trans.pointValuesToPixel(buffer.buffer);

    // if multiple colors
    if (dataSet.getColors().size() > 1) {

        for (int j = 0; j < buffer.size(); j += 4) {

            if (!mViewPortHandler.isInBoundsLeft(buffer.buffer[j + 2]))
                continue;

            if (!mViewPortHandler.isInBoundsRight(buffer.buffer[j]))
                break;

            if (mChart.isDrawBarShadowEnabled()) {
                if (mRadius > 0) …
Run Code Online (Sandbox Code Playgroud)

java android bar-chart mpandroidchart

8
推荐指数
0
解决办法
1552
查看次数

身体多部位加装

这是body呼叫的外观(将添加图像字段)。

{
"email":"test", "username":"test", "password":"test", "name":"test", "description":"Something...", "OAuthCredentialsTest":{
"client_id":23, "client_secret":"test" } }

我使用@PartMap作为body我的电话:

Call<CreateUserResult> createUserPart(@PartMap Map<String, RequestBody> map);
Run Code Online (Sandbox Code Playgroud)

然后当我enqueue打电话时:

File file = new File(signUpUser.getImagePath());
    RequestBody fileBody = RequestBody.create(MediaType.parse("image/*"), file);
    RequestBody fullName = RequestBody.create(MediaType.parse("text/plain"), signUpUser.getFullName());
    RequestBody email = RequestBody.create(MediaType.parse("text/plain"), signUpUser.getEmail());
    RequestBody username = RequestBody.create(MediaType.parse("text/plain"), signUpUser.getUsername());
    RequestBody password = RequestBody.create(MediaType.parse("text/plain"), signUpUser.getPassword());
    RequestBody desc = RequestBody.create(MediaType.parse("text/plain"), signUpUser.getDescription());

    Map<String, RequestBody> myMap = new HashMap<>();
    myMap.put("file\"; filename=\"" + file.getName(), fileBody);
    myMap.put("name", fullName);
    myMap.put("email", email);
    myMap.put("username", username);
    myMap.put("password", …
Run Code Online (Sandbox Code Playgroud)

android retrofit2

5
推荐指数
0
解决办法
909
查看次数

Recyclerview DiffUtil 在更新时将我的列表滚动到顶部

我决定DiffUtil尝试一下,而不是notifyDataSetChanged在我的EndlessRecyclerView.

问题是,在第一次或第二次投掷后,我list被滚动到顶部,但项目被添加到列表中。

这是我的DiffUtil

    public class MovieDiffCallback extends DiffUtil.Callback {

    List<Movie> mOldMovieList;
    List<Movie> mNewMovieList;

    public MovieDiffCallback(List<Movie> oldMovieList, List<Movie> newMovieList) {
        this.mOldMovieList = oldMovieList;
        this.mNewMovieList = newMovieList;
    }

    @Override
    public int getOldListSize() {
        return mOldMovieList != null ? mOldMovieList.size() : 0;
    }

    @Override
    public int getNewListSize() {
        return mNewMovieList != null ? mNewMovieList.size() : 0;
    }

    @Override
    public boolean areItemsTheSame(int oldItemPosition, int newItemPosition) {
        return mOldMovieList.get(oldItemPosition).getId().equals(mNewMovieList.get(newItemPosition).getId());
    }

    @Override
    public boolean areContentsTheSame(int oldItemPosition, …
Run Code Online (Sandbox Code Playgroud)

java android android-recyclerview

5
推荐指数
0
解决办法
1146
查看次数

如何将Spinner添加为导航抽屉中的项目

我想在我的导航抽屉中添加微调器作为项目.我应该把旋转器放在哪里?旋转器的布局在哪里膨胀?在哪里初始化微调器?我希望它看起来像这样: 在此输入图像描述

这是我添加项目的地方:

<menu xmlns:android="http://schemas.android.com/apk/res/android">

<group
    android:id="@+id/group1"
    android:checkableBehavior="single">
    <item
        android:id="@+id/nav_login"
        android:icon="@drawable/ic_login"
        android:title="@string/login_menu_item"/>
    <item
        android:id="@+id/nav_signup"
        android:icon="@drawable/ic_signup"
        android:title="@string/signup_menu_item"/>
    </group>

<item android:title="@string/language">
    <menu>
        <item
            android:id="@+id/nav_eng"
            android:title="@string/english">
        </item>

        <item
            android:id="@+id/nav_heb"
            android:title="@string/hebrew">
        </item>
    </menu>
Run Code Online (Sandbox Code Playgroud)

这是我的抽屉布局:

<LinearLayout 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:fitsSystemWindows="true"
          android:orientation="vertical">

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar_home"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/colorPrimary"
    android:minHeight="?attr/actionBarSize"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
    app:title="Masü"
    />

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:openDrawer="start">

    <FrameLayout
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        app:itemIconTint="@color/colorAccent"
        app:itemTextColor="@color/textColorSecondary"
        app:menu="@menu/activity_home_drawer"/>
</android.support.v4.widget.DrawerLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

点击一个项目,这就是它的工作原理:

public boolean onNavigationItemSelected(MenuItem item) {
    int id = item.getItemId(); …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-spinner navigation-drawer

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

如何将按钮放在Scrollview的底部

我已经尝试过全面搜索,但我似乎无法想出这个.基本上,我有一个Scrollview的布局和里面的元素.我想在滚动视图中放置一个按钮,它位于末尾/底部,只有当你一直滚动到底部时才能看到它.我试过这样做:

<ScrollView 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="wrap_content"
        android:fitsSystemWindows="true"
        android:orientation="vertical">

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:id="@+id/topcontainer">

        <android.support.v7.widget.Toolbar
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/toolbar_review"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/colorPrimary"
            android:minHeight="?attr/actionBarSize"
            android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
            app:title="Review Your Massage">

        </android.support.v7.widget.Toolbar>


        <include layout="@layout/card_review"/>

    </LinearLayout>


    <Button
        android:id="@+id/buttonReview"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:layout_alignParentBottom="true"
        android:background="@color/colorAccent"
        android:text="@string/book"
        android:layout_below="@+id/topcontainer"
        />
</RelativeLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

按钮确实位于底部,但下方有空间.如果我在分辨率更高的手机上运行应用程序,按钮将几乎位于屏幕中间.我怎么能这样做,无论它的分辨率如何始终保持在最低点?

以下是目前的截图:在此输入图像描述

xml android android-layout android-scrollview

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