提问人:MR loo 提问时间:8/19/2023 最后编辑:ndc85430MR loo 更新时间:8/20/2023 访问量:45
我想将ListView中的所有项目保存为pdf文件
I want save all items in ListView to pdf file
问:
我编写了一个条形码阅读器程序,在列表视图中显示条形码
无论我多么努力,我都无法通过按下按钮将我的监视列表项目保存到 PDF 文件中,请帮助我。
@SuppressWarnings("ALL")
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button scanBtn, btnok;
TextView messageFormat,ragham ;
ArrayList<String> barcodelist = new ArrayList<>();
HashSet<String> hashSet = new HashSet<String>();
ArrayAdapter <String> adapter;
String filename = "";
String filepath = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// referencing and initializing
// the button and textviews
scanBtn = findViewById(R.id.btnscann);
filename = "barcodes.txt";
ListView list1 = findViewById(R.id.list1);
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,barcodelist);
list1.setAdapter(adapter);
scanBtn.setOnClickListener(this);
Button b=findViewById(R.id.btnok);
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this, "ok", Toast.LENGTH_SHORT).show();
ObjectOutputStream out;
Object[] objs = new Object[list1.getCount()];
for (int i = 0 ; i < list1.getCount();i++) {
Object obj = (Object)list1.getItemAtPosition(i);
objs[i] = obj;
} try {
out = new ObjectOutputStream
(new FileOutputStream(new File(filename)));
out.writeObject(objs);
out.flush();
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
});
答:
0赞
Andrew
8/20/2023
#1
现在真的不应该使用列表视图,recyclerview 在屏幕上显示更有效,但由于您可以使用 PDFDocument 将视图直接绘制到 PDF,因此列表视图或 recyclerview 可以创建非标准 PDF 页面大小以将所有内容放在一个页面中,或者您必须弄清楚如何将项目拆分到多个页面上。
我已经做了一个完整的示例,说明如何将回收器视图绘制到多页pdf。
评论
txt
Object