• Head Fisrt Android Development读书笔记(3)When things take time


    The activity lifecycle

    onCreate() : called when your activity is created and typically where layouts and configuration occurs -->

    onStart(): called when your activity is displayed on the screen. -->

    onResume()\onPause(): this could be caused by a phone call, an alert from another application, or a user switching to a different app.

    Auto-refresh mechanism is processor and battery intensive. (How sensitive???)

    android:gravity="center"

    android:padding="5dp" controls the spaceing between views within a layout

    android:layout_marginTop="5dp" controls the spacing between this view and the views outside this layout.

    android:backgroud="#FF8D8D8D"

     

    android:layout_height="wrap_content": just as big bas it needs to be

    android:layout_hegiht="fill_parent". fill all of the space it can

    android:layout_weight="1" make the view stretch, "0" make that view just as big as needed.


    ProgressDialog

    show a dialog:

    ProgressDialog dialog = ProgressDialog.show(this, "Loading", "Loading the image og the Day");

    dismiss the dialog

    dialog.dismiss();

    Dedicated UI thread

    Android has a dedicated thread for updating the UI, it it responsible for prepaints, layouts, and other graphical processing that helps keep the UI responsive and keeps animation smooth. The UI has a queue of work, and it continually gets the most important chunk of work to process.

    1.KEEP the UI thread FREE of expensive processing for a responsive UI.

    2.Make SURE all necessary UI code occurs on the UI thread.

    Handler

    handler works by keeping a reference to the thread it was created by. You can pass it work and Handler ensures that the code is executed on the insatntiated thread.

    Handler handler;

    public void onCreat(...)

    {

    ...

    handler = new Handler();

    refreshFromFeed();

    }

    pass work to the Handler using post

    handler.post(Runnable runnable)


    WallpaperManager

    WallpaperManager wallpaperManager = WallpaperManager.getInstance(NasaDailyImage.this);

    wallpaperManager.setBitmap(image);

    Toast

    Toast.makeText(NasaDailyImage.this, "Wallpaper set", Toast.LENGTH_SHORT).show();

  • 相关阅读:
    Silverlight之各种线程的操作
    MVVM之Event and Command
    Silverlight之DescriptionViewer
    MVVM之Validation
    蚁群算法(C语言实现)
    最小生成树的prim算法
    关于HashMap、LinkedHashMap与TreeMap
    Slope One :简单高效的协同过滤算法(Collaborative Filtering)——转
    java中使用匿名类重写
    Session学习:防止用户重复提交表单(单态设计模式原子设计模式+MD5技术&Base64算法)
  • 原文地址:https://www.cnblogs.com/java20130722/p/3206870.html
Copyright © 2020-2023  润新知