小编nic*_*e j的帖子

如何使用 Intent.ACTION_CREATE_DOCUMENT 编写文件

简单来说,我想将一个视图组转换为一个 jpg 图像文件。由于Environment.getExternalStorageDirectory已弃用,我使用此意图Intent.ACTION_CREATE_DOCUMENT

private void createFile(String mimeType, String fileName) {
        Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setType(mimeType);
        intent.putExtra(Intent.EXTRA_TITLE, fileName);
        startActivityForResult(intent, WRITE_REQUEST_CODE);
    }
Run Code Online (Sandbox Code Playgroud)

onActivityResult();我得到结果返回的 Uri。 我的问题是getExternalStorage()我会用

Bitmap bitmap = Bitmap.createBitmap(
                    containerLayout.getWidth(),
                    containerLayout.getHeight(), Bitmap.Config.ARGB_8888);
            Canvas canvas = new Canvas(bitmap);
            containerLayout.draw(canvas);
            FileOutputStream fileOutupStream = null;


            try {
                fileOutupStream = new FileOutputStream(fileName);
                bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fileOutupStream);
                fileOutupStream.flush();
                fileOutupStream.close();
                Toast.makeText(this, "saved " + fileName, Toast.LENGTH_LONG).show();
            } catch (Exception e) {
                Toast.makeText(this, "something went wrong" + e.getMessage(), Toast.LENGTH_SHORT).show();
                e.printStackTrace();
            } …
Run Code Online (Sandbox Code Playgroud)

android bitmap fileoutputstream android-intent

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

Swift:text() .font 的条件修饰符

我是 Swift 的新手,仍在学习中。我尝试根据布尔变量格式化文本。它与字体大小和样式配合得很好。但它不适用于 .bold() 或 .italic 等样式。知道如何做到这一点吗?我也尝试了ViewModifier,但存在同样的问题。

struct ContentView: View {
    @State private var txtFont = false

    var body: some View {
        VStack{
            Spacer()
            Button("Toggle the Textproperty") {
                self.txtFont.toggle()
            }
            Spacer()
            Text("Hello, World!")
                .font(txtFont ? .largeTitle : .none)
                .bold()
                .italic()
//                txtFont ? .bold() : .none <= this line won't work
            Spacer()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

DefaultPickerStyle我在将选择器的样式从基于布尔决策更改SegmentedPickerStyle为基于布尔决策时遇到同样的问题。我需要这个来让用户界面更加用户友好。

有什么想法如何实现这一点?

properties modifier swift

2
推荐指数
1
解决办法
1206
查看次数