标签: android-context

在非Activity类中获取Context

在Android应用程序中,如果活动类名称已知,有没有办法在非活动类中获取android中的上下文?

android android-context

98
推荐指数
1
解决办法
12万
查看次数

getApplicationContext(),getBaseContext(),getApplication(),getParent()

有什么区别:

  1. getApplicationContext()
  2. getBasecontext()
  3. getApplication()
  4. getParent()

你能用一个简单的例子详细说明吗?

android android-context

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

Activity和Context有什么区别?

活动和上下文是一样的,还是存在差异?

我什么时候应该有一个方法传递一个Activity,当一个Context?

android android-context android-activity

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

Android - 从广播接收器onReceive()获取上下文以发送到

我基本上想要创建一个intent并将它传递给我的BroadcastReceiver的onReceive()服务.

到目前为止,我总是使用View.getContext(),但在这里,我被卡住了.我怎样才能获得上下文以便我可以使用public Intent (Context packageContext, Class<?> cls)

service android broadcastreceiver android-intent android-context

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

在AsyncTask中获取上下文

我试图在我的AsyncTask中获取名为Opciones的类的上下文(这个类是唯一一个调用该任务的类),但我不知道该怎么做,我看到了一些像这样的代码:

      protected void onPostExecute(Long result) {

    Toast.makeText(Opciones.this,"Subiendo la foto. ¡Tras ser moderada empezara a ser votada!: ", Toast.LENGTH_LONG).show(); 
}
Run Code Online (Sandbox Code Playgroud)

但它对我不起作用它说: "No enclosing instance of the type Opciones in scope"

android toast android-context android-asynctask

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

只有对Context的引用时关闭当前活动

如果我有参考Context,是否可以完成当前的活动?

我没有参考当前的活动.

android android-context android-activity

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

如何获取我的活动背景?

我真的不明白这整个事情是如何工作的,所以如果我有一些类A需要B扩展的类的上下文,Activity我该如何获得该上下文?

我正在寻找一种比将上下文作为类A构造函数的参数更有效的方法.例如,如果类A将有数百万个实例,那么我们最终会有数百万个冗余指针,Context而我们应该能够以某种方式只有一个地方和一个getter函数......

android android-context

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

Android 13 (SDK 33):PackageManager.getPackageInfo(String, int) 已弃用。还有什么选择呢?

从 API 级别 33 开始,getPackageInfo(String, int)PackageManager 类的方法已被弃用。文档建议改为使用getPackageInfo(String, PackageInfoFlags)。但该功能仅适用于 API 级别 33。

我当前的代码:

val pInfo = context.packageManager.getPackageInfo(context.packageName, 0)
Run Code Online (Sandbox Code Playgroud)

现在应该是这样吗?

val pInfo = context.getPackageInfo()

@Suppress("DEPRECATION")
fun Context.getPackageInfo(): PackageInfo {
    return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
        packageManager.getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(0))
    } else {
        packageManager.getPackageInfo(packageName, 0)
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-context package-info

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

如何从没有上下文的类调用getResources()?

在我的应用程序中,我有很多课程和活动.Droid是一个没有上下文的类.Mygame是一个扩展SurfaceView并实现SurfaceHolder.Callback的类.我在mygame类中创建了一个Droid对象,并为它设置了背景图像和位置.我为此编写的代码如下.

block1 = new Droid(BitmapFactory.decodeResource(getResources(), R.drawable.birdpic), 100, 10);
Run Code Online (Sandbox Code Playgroud)

Droid类的构造函数如下.

public Droid(Bitmap bitmap, int x, int y) {

    this.bitmap = bitmap;
    this.x = x;
    this.y = y;
}   
Run Code Online (Sandbox Code Playgroud)

在一个特定的场景中,我必须从Droid类本身设置Droid对象的背景图像和位置.我正面临着这个问题.下面给出的是执行此操作的代码片段.

if(checkflag)
{
    myObj.centerblock=new Droid(BitmapFactory.decodeResource(getResources(), R.drawable.blast), myObj.xpos, myObj.ypos);
}   
Run Code Online (Sandbox Code Playgroud)

问题是Droid类没有上下文.所以我不能在这里使用getResources().我已经尝试了下面的代码,但它崩溃了.

if(checkflag)
{
    myObj.centerblock=new Droid(BitmapFactory.decodeResource(myObj.getResources(), R.drawable.blast), myObj.xpos, myObj.ypos);
}
Run Code Online (Sandbox Code Playgroud)

有谁能够帮我.我只想设置背景图像并将其放置在Droid类本身的Droid对象中.

android background class android-context

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

在onClick中获取上下文(DialogInterface v,int buttonId)?

获取内容的上下文onClick(View view),按钮的回调onClickListener()很容易:

view.getContext()
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何获得上下文中onClick(DialogInterface v, int buttonId),对于回调对话框onClickListener

public class MainActivity extends Activity implements android.content.DialogInterface.OnClickListener
Run Code Online (Sandbox Code Playgroud)

这可能吗?

android dialog onclick android-context

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