Articles of 静态

Android中“无法对非静态方法进行静态引用”

我的Android程序中存在旧的“无法对非静态方法进行静态引用”错误的问题。 我正在创建一个沙子游戏(类似于粉末游戏),我创建了一个名为Control的类,在屏幕底部创建一个控制栏,带有一个用于画笔大小的滑块(工作正常)和一个popup按钮用于允许用户选择所选元素的对话框。 但是,当我从我的代码中调用DemoActivity.showDialog(2)时,它会给出非静态错误的静态引用(DemoActivity是我的应用程序的主要活动)。 我也尝试将其更改为Activity.showDialog(2),但我得到完全相同的错误! 请帮忙,我做错了什么? 这是我的代码,并提前感谢: package sand.falling.opengl; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.View; import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.SeekBar; public class Control extends LinearLayout { private ImageButton control_button; private SeekBar brush_size_slider; final CharSequence[] elementslist = {“Sand”, “Water”, “Plant”, “Wall”, “Fire”, “Ice”, “Generator”, “Oil”, “Magma”, “Stone”, “C4”}; public Control(Context context, AttributeSet attrs) { […]

使用导入静态字段是一种很好的编程习惯吗?

我在SQLiteOpenHelper类中声明了一些常量variables: public static final String USERNAME = “user_name”; public static final String PASSWORD = “password”; 在我创建SQL查询的Activity中,我导入了以下字段: import com.mygame.ui.login.LoginInfoSQLiteOpenHelper.*; 这是一个好习惯吗? 或者传统的方式更好地引用常量? LoginInfoSQLiteOpen.USERNAME

将数据保存在静态variables中是不好的做法?

(之前可能会提出这个确切的问题。我无法通过搜索find它。如果你发现重复的标志了。) 在Android应用程序中,在这些情况下将对象存储在静态字段中是不好的做法吗? 应用数据。 在应用程序运行时将应用程序数据保存在类中的静态variables中是不是很糟糕? 目前我将数据存储在Application类的实例variables中。 然后需要数据的类可以从Application获取数据。 Context等。在静态字段中存储Context (例如对Activity或Application的引用)是不好的做法? 这可以在需要例如LayoutInflater或资源的类中使用。 目前,我将Context s传递给需要它们作为参数的方法。

Android – 以太网 – 以编程方式

我正在开发一个Android应用程序,将由自定义设备使用,它将具有以太网支持(以及WiFi)。 该应用必须启用以太网的设置活动。 请注意,此设置必须由应用程序运行,而不是由android设置运行,因为应用程序将是设备上运行的唯一内容,用户将无法访问后台运行的android。 用户必须能够:1。启用/禁用以太网2.选择DHCP或STATIC 3.如果选择STATIC – 设置IP,网关 问题是我无法以编程方式访问android.net.ethernet,并且没有关于此问题的在线解释。 所以如果有人做过这样的事情,请帮助我走向正确的方向。 谢谢。

在Android <API Level 11中旋转ImageView

因此,在API Level 11中,谷歌推出了旋转ImageView的能力(耶和华,他们介绍了animation这样一个轮换的可能性,是的聪明思考,耶!) 但是我应该如何使用API​​级别8来旋转ImageView? 我不能使用如上所述的setRotation()。

Android – getResources()和静态

我上了课 public class Preferences extends PreferenceActivity implements OnSharedPreferenceChangeListener 我试着从另一个类调用一个方法。 此方法包含: mFoo.setTextColor(getResources().getColor(R.color.orange)) 但它不起作用。 它告诉我getResources不是静态的……我怎么能改变它?

NDK:libm静态链接

在尝试使用最近的android-9 x86平台编译源代码时遇到问题。 主要问题:为什么静态库libm.a和动态libm.so不同? 问题是我试图编译: /path/to/android-ndk-r8/toolchains/x86-4.4.3/prebuilt/linux-x86/bin/i686-android-linux-gcc –sysroot = / path / to / android-ndk-r8 / platforms / android-9 / arch-x86 -I / path / to / android-ndk-r8 / sources / cxx-stl / gnu-libstdc ++ / include -I / path / to / android-ndk-r8 / sources / cxx-stl / gnu-libstdc ++ / libs / x86 / include […]

Android中的静态安全吗?

我在我的代码中使用了一个静态类,它定义了一个静态字段,我在Activity onStop / onStart调用之间重用它。 这是一个场景: 用户点击“授权”按钮(静态数据被初始化) 停止活动并调用Web浏览器 浏览器执行回调并恢复活动(重用静态数据) 我的至少一个用户报告了步骤3中的故障,我无法重现但看起来像是重置静态数据 有什么建议么?

来自其他应用的Android通话方法

我有2个Android应用程序。 两者都安装在手机上。 让我们说两者的包名是com.android.test1和com.android.test2。 如何从test1.Main类调用Main2method()方法? test1的类: package com.android.test1; import android.app.Activity; import android.os.Bundle; public class Main extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } } test2的类: package com.android.test2; import android.app.Activity; import android.os.Bundle; public class Main2 extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public static void Main2method() { //do something.. } […]

当从背景返回应用程序时,有时在单例内保存的静态数据为空

我使用经典的单例模式来存储我在初始活动(splash活动)中从webServices获取的数据,然后在整个应用程序中访问它。 我有一个启动活动导致MainActivity,它是带有片段的滑动菜单活动,初始片段是一个包含支持地图片段的片段。 我的问题是存储在单例内的数据,有时当应用程序进入后台(按下主页并转移到另一个应用程序)然后转到最近的应用程序并选择我的应用程序时,单例的数据为空,这会导致我的应用程序崩溃。 我花了几个小时检查我的单例是否按原样编写,如果我自己没有使它变为null,静态数据变为null的可能原因是什么。 在我搜索之后,我find了一个非常简单的解释,解释了静态数据何时/为何变为空–Android静态对象生命周期 @Samuh回答我引用 “因此,如果您创建一个Android应用程序并初始化一个静态variables,它将保留在JVM中,直到发生以下情况之一:1。卸载该类2. JVM关闭3.进程死亡” 关于#1和#2 – 我真的不知道这些何时发生。 关于#3 – 这非常好,好像用户将从“最近的应用程序”中点击我的应用程序,这将调用我的情况“启动活动”中的启动器活动,这将从服务器获取数据(最新)并再次存储在我的单身内部 – 完美! ,这正是我的其他应用程序中发生的事情,区别在于我没有使用滑动菜单和片段,只有活动。 在我的情况下,从后台返回不会调用启动器Activity,它是“启animation面”,但会调用MainActivity(主滑动菜单活动)以及初始片段,当我尝试从我的单例访问数据时所有数据在它内部是null,单例本身不是null,因为在我使用getInstance()的片段的onCreate()。我相信这意味着单例丢失了,现在重新创建,里面没有数据,所以如果进程是为什么我没有回到发射器活动? 希望有人可以提前帮助,谢谢。 我的单身课程: public class MySingleton { // some private data members with getters/setters private String x,y,z; // the instance private static MySingleton theInstance = null; //private ctor private MySingleton(){ //doing something } //get instance public static synchronized […]