Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 不同设备的相同大小的控制盘菜单?_Android_Xml_Android Layout - Fatal编程技术网

Android 不同设备的相同大小的控制盘菜单?

Android 不同设备的相同大小的控制盘菜单?,android,xml,android-layout,Android,Xml,Android Layout,我正在GAMA的应用程序中使用滚轮菜单 我已经将轮子的直径设置为400。但是菜单显示的大小不同。 我希望它显示为no.1,但它在某些设备中显示为no.1,在某些设备中显示为no.2 如何在所有设备中实现与第一大尺寸相同的尺寸 private void init() { res = getApplicationContext().getResources(); wheel = (Wheel) findViewById(R.id.wheel); wheel.setItems

我正在GAMA的应用程序中使用滚轮菜单

我已经将轮子的直径设置为400。但是菜单显示的大小不同。 我希望它显示为no.1,但它在某些设备中显示为no.1,在某些设备中显示为no.2

如何在所有设备中实现与第一大尺寸相同的尺寸

private void init()
{
    res = getApplicationContext().getResources();
    wheel = (Wheel) findViewById(R.id.wheel);

    wheel.setItems(getDrawableFromData(icons));
    wheel.setWheelDiameter(400);
}

XML文件

<?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="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/bg">

 <com.digitalaria.gama.wheel.Wheel
        android:id="@+id/wheel"!
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </com.digitalaria.gama.wheel.Wheel>

</LinearLayout>

值mdpi:

<resources>
    <dimen name="diameter">400dp</dimen>
</resources>

维度元素的键必须相同。因此,根据屏幕尺寸,将有不同的值,并且将获取所需的值。

您可以使用这些资源。您可以为设备的不同尺寸创建尺寸文件,并在特定的尺寸文件中提及控制盘的大小。@Sripathi integer不允许,因为我使用了它20dp@Sripathi请参见Init()方法中的。我需要根据不同的尺寸更改直径是的,我要说的是,您需要根据设备的尺寸创建单独的dimens.xml。例如,您需要在xhdpi中创建值和dimens.xml文件。在xml文件中,您可以在dp中提到轮子的尺寸(正如我上面提到的)。您可以通过getResources()获取该值。getDimension(id);然后可以在控制盘中设置此值。您需要对mdpi、hdpi、xxhdpi和其他文件执行相同的操作。
<resources>
    <dimen name="diameter">450dp</dimen>
</resources>
<resources>
    <dimen name="diameter">500dp</dimen>
</resources>
private void init()
{
    res = getApplicationContext().getResources();
    wheel = (Wheel) findViewById(R.id.wheel);

    wheel.setItems(getDrawableFromData(icons));
    wheel.setWheelDiameter(getResources().getDimension(R.dimen.diameter));
}