通过活动从db获取变量?

时间:2013-06-12 15:10:36

标签: java android

有没有办法可以解决我的问题?

这是我的情况的一个简单例子(这不是真实的,它是类似的东西)。 我有一项活动:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
tools:context=".MainActivity" >

<com.loopj.android.image.SmartImageView
    android:id="@+id/image_switcher"
    android:layout_width="500dp"
    android:layout_height="match_parent"
    android:layout_alignParentTop="true" />

在那个活动中我有一个android:layout_width =“500dp”。 此处的值500需要从数据库中获取,并在此处用于活动。

如何从活动中调用数据库? 任何解决方案都可以接受,因为它是一个有效的解决方案:)

我有一些想法: 在onCreate活动中调用数据库,并以某种方式在我需要的属性上设置值。

我在Android中很新,这很有趣,但我没有人问。

由于

1 个答案:

答案 0 :(得分:1)

首先需要创建一个databaseAdapter类,这将是一个单独的帮助器类,您可以使用它来完成所有数据库连接工作。在这种情况下,使用SQL SELECT FROM ....检索值500(我假设你知道SQL)

这里有一些很好的参考

http://android-er.blogspot.ie/2011/06/simple-example-using-androids-sqlite.html   http://www.youtube.com/watch?v=j-IV87qQ00M

接下来,您要设置SmartImageView的属性,首先在代码中获取对它的引用。

SmartImageView myImage = (SmartImageView) this.findViewById(R.id.image_switcher);

然后你可以通过引用它来设置属性(如果loopJ smartImageView具有适当的属性),如果没有将它放在线性布局中,获取对它的引用并设置其布局宽度(尊重设备的像素密度) )使用

float displayMetricsDensity = basecontext.getResources().getDisplayMetrics().density;
        int height = (int)(pixelsValue * displayMetricsDensity);//use your own pixelsValus

LinearLayout myLL = this.findViewById(R.id.image_switcher_LinearLayout);
LayoutParams LP = new LayoutParams(height, LayoutParams.MATCH_PARENT);

myLL.setLayoutParams(LP);

玩得开心学习android ...记住它真正的Java,Android框架和API在顶部。