标签: dimension

5676
推荐指数
33
解决办法
121万
查看次数

从源代码中加载res/values/dimension.xml中的维度值

我想按原样加载值.我有两个dimension.xml文件,一个在/res/values/dimension.xml,另一个在/res/values-sw360dp/dimension.xml.

从源代码我想做的事情

getResources().getDimension(R.dimen.tutorial_cross_marginTop);
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我获得的值乘以屏幕密度系数(hdpi为1.5,xhdpi为2.0等).

我也试过

getResources().getString(R.dimen.tutorial_cross_marginTop);
Run Code Online (Sandbox Code Playgroud)

这原则上可行,但我得到一个以"dip"结尾的字符串......

android dpi dimension android-resources

319
推荐指数
8
解决办法
18万
查看次数

在代码和资源中设置TextView字体大小时不一致

官方文档似乎并没有回答这个问题,或者我不明白.

元素(没关系AlertDialog,它也发生在任何TextView上):

TextView tv = (TextView) dialog.findViewById(android.R.id.message);
Run Code Online (Sandbox Code Playgroud)

不一致性.案例A:

tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);
// or tv.setTextSize(14); does the same
Run Code Online (Sandbox Code Playgroud)

案例B:

tv.setTextSize(getResources().getDimension(R.dimen.text_size_small));
// TypedValue makes no difference either.
Run Code Online (Sandbox Code Playgroud)

values/dimens.xml它在哪里:

<dimen name="text_size_small">14sp</dimen>
Run Code Online (Sandbox Code Playgroud)

结果:字体大小不一样,从资源检索时显得更大.我可能错过了什么,所以我的错误是什么,最重要的是:为什么?

- 更新到第一个答案 -

固定数字只是一个例子,因为没有人会在代码中硬编码固定的字体大小.那么让我重新解释一下这个问题:

为什么如果从代码中获取资源,文本大小比从XML布局获取资源时要大?此外,问题仍然是相同的:如何在代码中检索14sp单元并使其与布局XML中设置的14sp单元保持一致?我没有接受答案,因为它没有告诉我如何在代码中使用资源中的sp单位来处理文本大小.

在此布局上,即使尺寸相同,字体大小也不同:

<TextView
            android:id="@+id/my_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            style="@style/TextBody" />
Run Code Online (Sandbox Code Playgroud)

styles.xml:

<style name="TextBody">
    <item name="android:textSize">@dimen/text_size_small</item>
    <item name="android:lineSpacingMultiplier">1.1</item>
    <item name="android:textColor">@color/body_text_1</item>
    <item name="android:textIsSelectable">true</item>
    <item name="android:linksClickable">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

看到text_size_small吗?为什么在这种情况下字体大小比使用相同dimen资源的代码小?

android dialog dimension text-size

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

1D数字阵列聚类

可能重复:
最佳地聚类一维数据?

所以,假设我有一个这样的数组:

[1,1,2,3,10,11,13,67,71]
Run Code Online (Sandbox Code Playgroud)

有没有一种方便的方法将数组分区为这样的东西?

[[1,1,2,3],[10,11,13],[67,71]]
Run Code Online (Sandbox Code Playgroud)

我查看了类似的问题,但是大多数人建议使用k-means来聚集点,比如scipy,这对像我这样的初学者来说非常混乱.另外我认为k-means更适合两维或更多维聚类吧?有没有办法根据数字将N个数组分组到多个分区/聚类?

有些人还提出了严格的范围分区,但并不总是按预期呈现结果

arrays cluster-analysis data-mining dimension partition-problem

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

android维度:pt和dp之间的区别

文件说160 dp(密度无关)等于1英寸.72磅也是1英寸.所以我不明白为什么android定义一个dp测量,而它似乎与点相同.任何人都可以解释一下吗?如果我可以使用pt,为什么要使用dp?

android measurement dimension

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

在dimens.xml中,value等于match_parent或fill_parent?

基于XML属性部分,我在下面指定了以下内容dimens.xml:

<dimen name="match_parent">-1dp</dimen>
<dimen name="main_left_menu_user_account_width">@dimen/match_parent</dimen>
<dimen name="main_left_menu_user_account_height">@dimen/match_parent</dimen>
Run Code Online (Sandbox Code Playgroud)

然后我在布局中使用这两个维度:

<ImageView 
    android:id="@+id/userAccountImage"
    android:background="@drawable/user_account"
    android:layout_width="@dimen/main_left_menu_user_account_width"
    android:layout_height="@dimen/main_left_menu_user_account_height" />
Run Code Online (Sandbox Code Playgroud)

然后,当我预览到时Graphical Layout,它会抱怨:

您必须提供layout_width属性.

您必须提供layout_height属性.

实际上我可以定义一个等于match_parent的值dimens.xml吗?

更新:

我也试过了,但预览仍然抱怨:

<dimen name="main_left_menu_user_account_width">-1dp</dimen>
<dimen name="main_left_menu_user_account_height">-1dp</dimen>
Run Code Online (Sandbox Code Playgroud)

我成功使用wrap_content(Graphical Layout根本没有抱怨):

<dimen name="wrap_content">-2dp</dimen>

<dimen name="main_right_menu_width">@dimen/wrap_content</dimen>
<dimen name="main_right_menu_height">@dimen/wrap_content</dimen>
Run Code Online (Sandbox Code Playgroud)

xml android dimension android-layout android-resources

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

如何看到矩形选框选择区域大小而不裁剪呢?在photoshop cs 5

如何在不裁剪的情况下看到矩形选框的选区大小?在paint.net中非常容易,但我必须在photoshop cs 5.在选择区域时,我应该能够看到所选区域的尺寸.我怎样才能做到这一点 ?

此外,当我选择具有矩形选框的区域时,我想要看到该区域的位置或者至少我需要能够看到像素位置.位置意味着它在图像中的位置像顶部55px左45px谢谢.

Adobe Photoshop CS 5

photoshop marquee selected dimension

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

无需渲染即可测量文本宽度/高度

有没有办法在不渲染实际元素的情况下估算文本宽度?像canvas TextMetrics这样的东西?

案例:我需要估算ReactList的元素高度.要做到这一点,我需要大致知道文本元素需要多少空间(或者它们将跨越多少行).

例如.

render(){
    return <div><SomeComponentWithKnownDims/><p>{this.props.someText}</p></div>;
}
Run Code Online (Sandbox Code Playgroud)

如果我知道someText会被渲染到一条线上有多宽以及线条的长度,我可以很容易地得出一个合适的元件高度估计值.

编辑:请注意,这是非常重要的性能,不应该触及DOM

html javascript text dimension reactjs

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

如何设置表单可见区域的大小,减去标题和边框?

我想将我的表格设置为300*300,不包括标题和边框.

如果我使用Size属性,它确实包含这些值.

有什么方法可以做到吗?

c# forms dimension visual-studio winforms

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

Android在片段中获取布局高度和宽度

我正在研究一个片段,我想得到一个layout包含在其中的维度xml fragment layout.当我尝试代码时

RelativeLayout myLayout = view.findViewById(R.id.myLayout);
myLayout.getHeight();
Run Code Online (Sandbox Code Playgroud)

它返回0.我需要将这些尺寸放入myLayout其他对象中.

我尝试使用:

myLayout.getViewTreeObserver().addOnGlobalLayoutListener( 
    new ViewTreeObserver.OnGlobalLayoutListener(){

        @Override
        public void onGlobalLayout() {
            mHeight = myLayout.getHeight();  
            mWidth= myLayout.getWidth();
            System.out.println("width: "+mWidth+"   height: "+mHeight);
         }
});
Run Code Online (Sandbox Code Playgroud)

但是这段代码调用了很多时间,我不确切知道它何时执行.我需要将这些尺寸转化为 public void onActivityCreated ()方法.可能吗?

layout android fragment dimension

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