相关疑难解决方法(0)

如何将DP,PX,SP相互转换,尤其是DP和SP?

我知道DP,SPPX之间的区别.在搜索了这个主题后,我发现没有什么能让我完全满意.也许这篇文章是重复的,但我仍然想知道从DPPX,DPSP,从SPPX,从PXSP,从SPDP,从DPSP的转换公式是什么?我知道一些代码可以做到这一点,但它们并不完美.

android pixel density-independent-pixel

53
推荐指数
4
解决办法
4万
查看次数

LinearLayout的边距,以编程方式使用dp

是否可以通过编程方式设置LinearLayout的边距,但不能设置像素,但dp?

android

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

在自定义视图中设置textSize会产生巨大的文本

我在自定义视图的构造函数中调用以下内容:

private void style(Resources.Theme theme, AttributeSet attrs) {
    TypedArray a = theme.obtainStyledAttributes(
            attrs,
            R.styleable.StackedTextView,
            0, 0);

    try {
        DebugTool.assertTrue(holdr != null, "View holder has not been properly intialized.");
        String line1 = a.getString(R.styleable.StackedTextView_line1);
        setLine1(line1);
        String line2 = a.getString(R.styleable.StackedTextView_line2);
        setLine2(line2);

        line1Size = a.getDimension(R.styleable.StackedTextView_line1_textSize, 20);
        line2Size = a.getDimension(R.styleable.StackedTextView_line2_textSize, 20);
        if (line1Size > 0) {
            holdr.textLine1.setTextSize(line1Size);
        }
        if (line2Size > 0) {
            holdr.textLine2.setTextSize(line2Size);
        }

    } finally {
        a.recycle();
    }
}
Run Code Online (Sandbox Code Playgroud)

它应该为2个文本字段设置文本和文本大小.

除了文本内容的字符串格式之外,我在attr.xml中还有以下内容(工作正常).

    <attr name="line1_textSize" format="dimension" />
    <attr name="line2_textSize" format="dimension" />
Run Code Online (Sandbox Code Playgroud)

当我使用此视图并通过xml使用维度设置文本大小时,

        <com.me.app.view.component.StackedTextView
            android:id="@+id/overview_total_reviews"
            app:line1="40" …
Run Code Online (Sandbox Code Playgroud)

android android-custom-view android-layout

38
推荐指数
1
解决办法
8896
查看次数

以编程方式重新设置TextView高度

我想在将其添加到xml文件的主窗口后重置textView高度.

在RelativeLayout中,

  <TextView
      android:id="@+id/text_l"
      android:layout_width="50sp"
      android:layout_height="50sp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:layout_marginLeft="10sp"
      android:layout_marginTop="145dp"
      android:gravity="center"
      android:textAppearance="?android:attr/textAppearanceLarge"
      android:textColor="#000000" >
  </TextView>
Run Code Online (Sandbox Code Playgroud)

我只想将它从50改为70:

我试过了:

 TextView text = (TextView)findViewById(R.id.text_l);
 text.setHeight(70);
Run Code Online (Sandbox Code Playgroud)

但没有改变.

android textview android-xml

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

在Android AlertDialog中为EditText添加更大的余量

我在AlertDialog中有一个EditText.看起来像这样.

在此输入图像描述

看看它说tddjdjck的位置以及它是如何缩进的.这就是我想要的(我使用setPadding左右设置为50),但我也希望它下面的蓝线也缩进.我怎么做?

我使用的代码如下:

            final AlertDialog.Builder alert = new AlertDialog.Builder(thisActivity);
            final EditText input = new EditText(thisActivity);
            input.setSingleLine();
            input.setPadding(50, 0, 50, 0);

            alert.setTitle("by...");
            alert.setMessage("enter the name of the person who did:");
            alert.setView(input);
            alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    String value = input.getText().toString().trim();

                }
            });

            alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    dialog.cancel();
                }
            });
            alert.show();  
Run Code Online (Sandbox Code Playgroud)

谢谢

android margin padding android-edittext android-alertdialog

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

CompoundDrawable大小

在某些情况下,Android-Lint给了我这个暗示:

此标签及其子代可以替换为一个和复合drawable

我可以在某些地方这样做,但在其他地方,缩放图像很重要,我无法做到.有没有选项可以设置复合可绘制的大小?

android

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

Android将Px转换为Dp(视频宽高比)

可能重复:
在android中将像素转换为dp

我正在尝试将像素转换为dp.公式是什么?

让我们将640和480转换成dp.文档说这个

dp单位到屏幕像素的转换很简单:px = dp*(dpi/160)

但我认为这不是我需要的(我不知道如何使用它).我想我只需要论坛.我准备好了代码:

DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);

    switch(metrics.densityDpi)
    {
         case DisplayMetrics.DENSITY_LOW:
         int sixForty = ?
         int fourEighty = ?
         break;

         case DisplayMetrics.DENSITY_MEDIUM:
         int sixForty = ?
         int fourEighty = ?
         break;

         case DisplayMetrics.DENSITY_HIGH:
         int sixForty = ?
         int fourEighty = ?
         break;
    }
Run Code Online (Sandbox Code Playgroud)

android aspect-ratio screen-resolution

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

Android:以编程方式设置ImageView layout_height

我的main.xml文件中有一个ImageView:

<ImageView
            android:id="@+id/pageImage"
            android:layout_width="270dp"
            android:layout_height="45dp"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="25dp"
            android:layout_marginTop="15dp"
            android:scaleType="fitXY"
            android:src="@drawable/pageimage" />
Run Code Online (Sandbox Code Playgroud)

我只需要以layout_height编程方式将其设置为另一个值.

另外,我需要在dp中设置值.所以它目前是45dp,我想在主要活动中将其更改为另一个值.

我试图用LayoutParams弄清楚如何做到这一点,但我无法成功.

谢谢.

android android-imageview

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

ScrollView中的ViewPager - 垂直滚动不起作用

所以,我有ScrollView一个孩子 - 一个LinearLayout有两个孩子:a TextView和a ViewPager.ViewPager包含许多元素的布局,这就是为什么我需要垂直滚动的能力.只有页面ViewPager可以水平滚动(即:我只想在其中水平滑动ViewPager).那一个TextView不能水平滚动,但应该与我一起滚动ViewPager.

简单?没有.

我在StackOverflow中看到了非常类似的问题(这里,这里,这里这里).所有建议的解决方案都不适合我:(

我看到的是这个 < - 我的甜蜜UI :),但我无法垂直滚动:(

在ViewPager中嵌入ScrollViews不是一个选项 - UI的设计禁止这样做.

也许这是我用编程方式填充视图寻呼机中的每个页面的东西?嗯...

任何建议,将不胜感激.

我的代码:

activity_main.xml中:

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

                android:id="@+id/scrollView"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:background="@android:color/white"
                android:fillViewport="true" >

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

                    <TextView
                    android:id="@+id/tvText"
                    android:layout_width="fill_parent"
                    android:layout_height="200dp"
                    android:text="Test text" />

                <android.support.v4.view.ViewPager
                            android:id="@+android:id/viewpager"
                            android:layout_width="fill_parent"
                            android:layout_height="fill_parent" >
                </android.support.v4.view.ViewPager>


                </LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

ViewPager中的每个页面都有这样的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-scrollview android-viewpager

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

Android:如何最大化PreferenceFragment宽度(或摆脱保证金)?

Android设置屏幕截图

FragmentsBC截图

如果您查看Android设置屏幕截图或FragmentsBC屏幕截图,PreferenceFragment中会有保证金.你怎么能摆脱它?

我尝试将PreferenceFragment宽度设置为fill_parent,但没有运气.

android preference

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