小编Ed *_* Wu的帖子

将 Context 与 AppCompatActivity 一起使用

我目前正在开发 Android 应用程序,并处理序列化文件。我有一个方法可以将 Java 对象序列化到带有 Context 参数的文件中。在另一个类中工作时,我可以检索有效的 Context 对象,但是当我在扩展 AppCompatActivity 的类上时,我不太确定该怎么做。我尝试使用 getApplicationContext() 但这仍然为我提供了 Context 的空值。

这是我迄今为止所掌握的基础:

public class BookView extends AppCompatActivity {

private static Context context;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_book);
    Book book = Browse.books.get(getIntent().getIntExtra("index", 0));
    Browse.book = book;
    setUpScreen(book);
    context = getApplicationContext();
}

private void setUpChapters(Book book){

    ListView chapters = (ListView) findViewById(R.id.chapters);
    ChapterAdapter adapter = new ChapterAdapter(this, R.layout.row, book.getChapters());
    chapters.setAdapter(adapter);

    if (context != null) {
        book.serialize(context);
    }
    else {
        System.out.println("Null bookview context");
    }

    chapters.setOnItemClickListener(new AdapterView.OnItemClickListener() { …
Run Code Online (Sandbox Code Playgroud)

android android-context appcompatactivity

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

图片和PDF制作

我目前正在使用pdfmake生成项目报告pdf的给定信息,但在获取图像显示时遇到了一些麻烦。

我有一个生成pdfmake“ object”的函数,如下所示:

function singleProject(data) {
    return {
        text: "Project: \n" + data.title + \n\nImage: \n",
        pageBreak: 'before'
    }
}
Run Code Online (Sandbox Code Playgroud)

我想在给定图像URL的情况下向该报告中添加图像(类似“ images / sample_image.jpg”),根据我在其他答案中所读的内容,我必须将其转换为base 64格式。

在另一个答案中提供了这些功能之一,但我不太清楚如何使用它:

function convertImgToBase64URL(url, callback, outputFormat){
    var canvas = document.createElement('CANVAS'),
        ctx = canvas.getContext('2d'),
        img = new Image;
    img.crossOrigin = 'Anonymous';
    img.onload = function(){
        var dataURL;
        canvas.height = img.height;
        canvas.width = img.width;
        ctx.drawImage(img, 0, 0);
        dataURL = canvas.toDataURL(outputFormat);
        callback(dataURL);
        canvas = null;
    };
    img.src = url;
}
Run Code Online (Sandbox Code Playgroud)

但是,我不太清楚该如何使用该函数将图像添加到所提供的第一个函数中,因为它不会返回dataURL。如果我尝试类似:

function singleProject(data) {
    return {
        text: "Project: \n" + …
Run Code Online (Sandbox Code Playgroud)

javascript image pdfmake

3
推荐指数
1
解决办法
9555
查看次数