接口 interface

来源:互联网 发布:royce巧克力淘宝假货 编辑:程序博客网 时间:2024/05/22 13:48

举例:

public interface onUserTouchListener {     
        public boolean onUserTouch(MotionEvent e);
    }

 

private onUserTouchListener mListener;

public void setOnUserTouchListener(onUserTouchListener listener)
    {
        mListener = listener;
    }

 

其他程序实现该接口

views.setOnUserTouchListener(new onUserTouchListener(){
        public boolean onUserTouch(MotionEvent e) {                      
               return false;
        }

  });

 

举例二:

public class UnreadMessagesAsyncQuery {    AsyncTask<Void, Void, Cursor> mAsyncTask;    completeListener mContext;    ContentResolver mContentResolver;public UnreadMessagesAsyncQuery(completeListener context, ContentResolver contentResolver){        mContext = context;        mContentResolver = contentResolver;    }public synchronized void query(){        mAsyncTask = new AsyncTask<Void, Void, Cursor>(){            @Override            protected Cursor doInBackground(Void... arg0) {                Cursor cursor = mContentResolver.query(Im.COUNT_UNREAD_MESSAGE, null, null, null, null);                return cursor;            }                        @Override            protected void onPostExecute(Cursor result) {                if(mContext!=null){                    mContext.onQueryResult(result);                }            }        };                mAsyncTask.execute();    }public interface completeListener{        public void onQueryResult(Cursor result);    }}


 

private UnreadMessagesAsyncQuery mUnreadQuery;private UnreadMessagesAsyncQuery.completeListener mUnReadQueryListener= new UnreadMessagesAsyncQuery.completeListener(){@Overridepublic void onQueryResult(Cursor cursor) {if(cursor!=null){//do something...setUnreadBadge(cursor.getCount());cursor.close();}}};mUnreadQuery = new UnreadMessagesAsyncQuery(mUnReadQueryListener, getContentResolver());mUnreadQuery.query();


 

原创粉丝点击