小编Phi*_*oda的帖子

EditText setError在BottomSheetDialog中不合适

EditText在调用时遇到错误指示器位置的问题editText.setError("...").

正如您在屏幕截图中看到的,我正在使用它BottomSheetDialogEditText内部.当我显示错误指示符时,文本完全不合适.似乎对话框"认为"它是全屏的,而实际上并非如此.

在此输入图像描述

这是我的对话框布局文件(phone_dialog.xml):

<android.support.constraint.ConstraintLayout 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:layout_weight="0"
                                             android:orientation="vertical">

    <TextView
        android:id="@+id/tvTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:gravity="center"
        android:padding="@dimen/padding_layout_normal"
        android:text="@string/dialog_title_edit_phone"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        />

    <EditText
        android:id="@+id/etPhone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:gravity="center"
        android:inputType="phone"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/tvTitle"/>


    <Button
        android:id="@+id/btnSavePhone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="0dp"
        android:layout_marginRight="0dp"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/etPhone"/>

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

我的Activity布局文件(activity_contacts.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rvContacts"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这就是我显示对话框的方式Activity:

PhoneBottomDialog dialog = new PhoneBottomDialog(Context);
dialog.show();
Run Code Online (Sandbox Code Playgroud)

这是我的PhoneBottomDialog班级:

public …
Run Code Online (Sandbox Code Playgroud)

android dialog android-layout android-edittext bottom-sheet

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

如何在ViewPager适配器中获取String资源?

我试图为我的viewpager设置标题,我似乎无法让它工作.我尝试过Resources.getSystem().getString(R.string.title1); 并试图传递一个上下文.谁能帮助我?

public class ViewPagerAdapter extends FragmentPagerAdapter {
    final int PAGE_COUNT = 3;
    Context context;

    public ViewPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public int getCount() {
        return PAGE_COUNT;
    }

    @Override
    public Fragment getItem(int position) {
        return PageFragment.create(position + 1);
    }

    @Override
    public CharSequence getPageTitle(int position) {

        switch (position) {

        case 0:
            return Resources.getSystem().getString(R.string.title1);

        case 1:
            return Resources.getSystem().getString(R.string.title1);

        case 2:
            return Resources.getSystem().getString(R.string.title1);
        }

        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

logcat的:

09-02 17:40:33.160: E/AndroidRuntime(3116): FATAL EXCEPTION: main
09-02 17:40:33.160: E/AndroidRuntime(3116): android.content.res.Resources$NotFoundException: String resource ID …
Run Code Online (Sandbox Code Playgroud)

android android-viewpager android-resources

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

如何将Java对象转换为JSONObject?

我需要将POJO转换为JSONObject(org.json.JSONObject)

我知道如何将其转换为文件:

    ObjectMapper mapper = new ObjectMapper();
    try {
        mapper.writeValue(new File(file.toString()), registrationData);
    } catch (JsonGenerationException e) {
        e.printStackTrace();
    } catch (JsonMappingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

但这次我不想要一个文件.

java android json type-conversion jsonobject

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

如何修改MPAndroidChart BarChart中的条宽?

我正在使用MPAndroidChart库.

我想修改条形图中的条形大小.你能告诉我们在mp android图表中检查条形图中条形图的修改大小的位置

android mpandroidchart

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

如何在MPAndroidChart中设置颜色?

我正在使用MPChartlib作为基本的"条形图"(3个条形和0到100之间的值).

应用程序的背景是黑暗的,所以我想将文本设置为白色,但是当我在chart.xml中设置了存储在string.xml中的颜色代码"FFFFFF"但文本显示为深蓝色时.

   //Axe X
   XAxis x = barchart.getXAxis();
   x.setPosition(XAxisPosition.BOTTOM);
   x.setTextColor(R.color.chart_color);
   x.setAxisLineColor(R.color.chart_color);


   // Design
   barchart.setDragEnabled(false);
   barchart.setDrawGridBackground(false);
   barchart.setTouchEnabled(false);
   barchart.setHighlightEnabled(false);
   barchart.setMaxVisibleValueCount(101);
   barchart.setDescription(null);
   barchart.setGridBackgroundColor(R.color.chart_color);

   barchart.invalidate(); // refresh

   //Axe Y
   barchart.getAxisLeft().setAxisMaxValue(100);
   barchart.getAxisLeft().setDrawTopYLabelEntry(true);
   barchart.getAxisLeft().setDrawAxisLine(false);
   barchart.getAxisLeft().setDrawGridLines(false);
   barchart.getAxisLeft().setAxisLineColor(R.color.chart_color);
   barchart.getAxisLeft().setTextColor(R.color.chart_color);

   barchart.getAxisRight().setAxisMaxValue(100);
   barchart.getAxisRight().setDrawTopYLabelEntry(true);
   barchart.getAxisRight().setAxisLineColor(R.color.chart_color);
   barchart.getAxisRight().setTextColor(R.color.chart_color);
Run Code Online (Sandbox Code Playgroud)

我尝试了很多东西和研究,但找不到问题,lib是不是使用相同类型的颜色代码或什么?

谢谢你的帮助,Alex

charts android colors textcolor mpandroidchart

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

MPAndroidChart如何设置y轴最小值和最大值或设置默认缩放?

我使用MPAndroidChart来显示股票图表,但Y线值非常接近,图表是这样的在此输入图像描述

我可以像这样使用手指缩放 在此输入图像描述

这是我想要的默认外观

有没有办法设置Y线最大值和最小值或设置默认缩放.

我尝试了lib函数,但它不起作用

charts android mpandroidchart

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

如何在数组中存储多个数据类型?

我正在寻找类似于Array的东西,但它需要存储多种数据类型.Oracle Java教程说:"数组是一个容器对象,它包含固定数量的单一类型的值." 因此,如果我不能将数组用于多种类型,我该使用什么?

我有这个代码,一次只向地图添加一个标记,因为它在每个循环上写入我的lat和long值,并且只将最后一个传递给onPostExecute.所以我需要像数组一样传递多种形式的联系信息.即我从每个JSON字符串中提取位置,但我需要从该后台线程中拉出并将名称和电话号码传递给UI.

try {

    String apples = endpoint.listContactInfo().execute().toString();

    JSONObject jObject = new JSONObject(apples);

    JSONArray jsonArr = jObject.getJSONArray("items");

     for(int i =0 ; i<jsonArr.length() ;i++ ){
         JSONObject jsonObj1 = jsonArr.getJSONObject(i);


                    // Storing each json item in variable
                    String id = jsonObj1.getString(TAG_ID);
                    String nameFirst1 = jsonObj1.getString(TAG_FIRSTNAME);
                    String nameLast1 = jsonObj1.getString(TAG_LASTNAME);
                    String emailAddress1 = jsonObj1.getString(TAG_EMAIL);
                    String streetAddress1 = jsonObj1.getString(TAG_ADDRESS);
                    String phone1 = jsonObj1.getString(TAG_PHONE);

                    //test to see if made it to string
                    Log.d("YOUR_TAG", "First Name: " + nameFirst1 + " Last Name: " …
Run Code Online (Sandbox Code Playgroud)

java arrays android google-maps

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

如何使用YouTubePlayerFragment使用YouTube API播放视频?

我想在片段中播放视频.但是,我无法让它发挥作用.如果我正在扩展'YoutubeFailureRecovery',我得到:

09-06 21:56:40.472:E/AndroidRuntime(4946):引起:java.lang.IllegalStateException:只能使用将YouTubeBaseActivity扩展为其上下文的Activity创建YouTubePlayerView.

这是我的.xml:

<com.google.android.youtube.player.YouTubePlayerView
    android:id="@+id/player"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>
Run Code Online (Sandbox Code Playgroud)

这是班级:

public class YoutubeFragment extends YoutubeFailureRecovery {

    YouTubePlayer player;
    YouTubePlayerView playerView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle arg2) {
        // TODO Auto-generated method stub
        return inflater.inflate(R.layout.detailview, container, false);
    }

    @Override
    public void onStart() {
        // TODO Auto-generated method stub
        super.onStart();
        playerView = (YouTubePlayerView)getActivity().findViewById(R.id.player);
        playerView.initialize(DataHolder.DEVELOPER_KEY, this);

    }

    @Override
    public void onInitializationSuccess(Provider provider, YouTubePlayer player,
                                        boolean wasRestored) {
        // TODO Auto-generated method stub
        player.cueVideo("nCgQDjiotG0");
    }

    @Override
    protected Provider getYouTubePlayerProvider() {
        // TODO …
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-youtube-api

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

隐藏视图的翻译动画

我需要我的listview隐藏和显示使用替代触摸.因此,使用动画隐藏列表视图在屏幕的左侧

 Animation animation = new TranslateAnimation(-100, 0,0, 0);
                            animation.setDuration(100);
                            animation.setFillAfter(true);
                            lv.startAnimation(animation);
                            lv.setVisibility(0);
Run Code Online (Sandbox Code Playgroud)

并用于显示使用

lv.setVisibility(View.VISIBLE);
Run Code Online (Sandbox Code Playgroud)

我的问题是列表视图没有得到隐藏.它会向左侧移动并再次返回.我不知道如何在触摸时完全隐藏列表视图到左边缘.请帮助实现这一目标

android android-animation android-listview android-view

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

MPAndroidChart BarChart水平/垂直

我正在使用MPAndroidChart库.在BarChart默认情况下,所有条形图都是垂直的(自下而上),如何在水平方向显示它?

android mpandroidchart

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