public void run() { // 1. try { mona = new Mona(); boardVC.setModel(mona.getBoardsByCategory("����ch")); mona.addMonaListener(viewVC); } catch (Exception e) { e.printStackTrace(System.err); status = e.toString(); } // 2. Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); Log.d("AndroidMona", "Display#orientation: " + display.getOrientation()); if (display.getOrientation() == Configuration.ORIENTATION_LANDSCAPE) { viewVC.initImage(display.getHeight(), display.getWidth()); } else { viewVC.initImage(display.getWidth(), display.getHeight()); } // 3. mode = MODE_BOARD; System.err.println("MODE: BOARD"); postInvalidate(); }
public void onDraw(Canvas g) { super.onDraw(g); switch (mode) { // case MODE_INIT: // g.setColor(Color.pink); // g.fillRect(0, 0, getWidth(), getHeight()); // g.setColor(Color.blue); // g.drawString("BD-J Mona (c) 2008 VAVI", 36, 36); // g.drawString(status, 36, 60); // break; case MODE_BOARD: boardVC.paint(g); break; case MODE_THREAD: threadVC.paint(g); break; case MODE_VIEW: viewVC.paint(g); break; } paint.setColor(Color.DKGRAY); if (throwable != null) { try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); PrintStream ps = new PrintStream(baos); throwable.printStackTrace(ps); String stackTraces = baos.toString(); StringTokenizer st = new StringTokenizer(stackTraces, "\n"); int i = 0; paint.setColor(Color.RED); while (st.hasMoreTokens()) { g.drawText(st.nextToken(), 0, fontSize * i + 36, paint); i++; } } catch (Exception e) { String x = (Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / 1024L + "KB/" + Runtime.getRuntime().totalMemory() / 1024L + "KB" + ": 6: " + e; g.drawText(x, 0, getHeight() - 36, paint); } throwable = null; } else { String x = (Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / 1024L + "KB/" + Runtime.getRuntime().totalMemory() / 1024L + "KB" + ": " + status; g.drawText(x, 0, getHeight() - 36, paint); } }