如何截取 GridLayout 的屏幕截图然后分享

How to take a screenshot of a GridLayout and then share it

我有一个宾果应用程序,其中有一个 GridLayout 显示所有已完成的数字,左边。 我想截屏然后分享。 我尝试了很多可能性并尝试做很多事情,但是 none 成功了

case R.id.share:
      //the answer should be here

GridLayout 的名称是 gridLayout

如果您需要任何其他代码解释,请告诉我

考虑到我们想要在点击按钮时截取屏幕截图,代码将如下所示:

findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
       Bitmap bitmap = takeScreenshot();
       saveBitmap(bitmap);
   }
});

调用getDrawingCache();将 return 表示视图的位图,如果缓存被禁用,则为 null,这就是为什么 setDrawingCacheEnabled(true);应在调用 getDrawingCache() 之前设置为 true。

public Bitmap takeScreenshot() {
   View rootView = findViewById(android.R.id.content).getRootView();
   rootView.setDrawingCacheEnabled(true);
   return rootView.getDrawingCache();
}

此代码来自this网站 该网站还包含保存截图的代码。

此外,问题可能与

重复