实训第八周(1)

李晨晨:

本次主要整合所有P2P相关的内容,实现两人聊天界面的具体功能。

P2PChatActivity

1.onCreate:主要分为5部分:初始化当前聊天会话、初始化标题栏、初始化消息列表、初始化监听器、加载历史消息记录

[java] view plain copy
  1. @Override  
  2.     protected void onCreate(@Nullable Bundle savedInstanceState) {  
  3.         super.onCreate(savedInstanceState);  
  4.         setStatusBarColor(R.color.app_blue_color);  
  5.         setContentView(R.layout.activity_p2p_chat);  
  6.         createChatSession();  
  7.         initTitle();  
  8.         ButterKnife.bind(this);  
  9.   
  10.         mInputLayout.setLayoutListener(this);  
  11.         mInputLayout.bindInputLayout(this, mRecyclerView);  
  12.   
  13.         initMsgList();  
  14.         initListener();  
  15.   
  16.         // 注册监听  
  17.         NIMClient.getService(MsgServiceObserve.class)  
  18.                 .observeReceiveMessage(mMsgReceiveObserver, true);  
  19.         NIMClient.getService(MsgServiceObserve.class)  
  20.                 .observeMsgStatus(mMsgStatusObserver, true);  
  21.         NIMClient.getService(MsgServiceObserve.class)  
  22.                 .observeAttachmentProgress(mProgressObserver, true);  
  23.   
  24.         // 加载历史消息数据  
  25.         loadMessage();  
  26.     }  
2.初始化当前聊天会话
[java] view plain copy
  1. private void createChatSession() {  
  2.         chatInfo = (NimUserInfo) getIntent().getSerializableExtra("NimUserInfo");  
  3.         NimUserInfo myInfo = NimUserHandler.getInstance().getUserInfo();  
  4.         mChatSession = new ChatSession();  
  5.         mChatSession.setSessionId(chatInfo.getAccount());  
  6.         mChatSession.setSessionType(SessionTypeEnum.P2P);  
  7.         mChatSession.setChatAccount(chatInfo.getAccount());  
  8.         mChatSession.setMyAccount(myInfo.getAccount());  
  9.         mChatSession.setChatInfo(chatInfo);  
  10.         mChatSession.setMyInfo(myInfo);  
  11.   
  12.         mChatHandler = new ChatMsgHandler(this, mChatSession);  
  13.     }  

3.初始化标题栏:

[java] view plain copy
  1. private void initTitle() {  
  2.         if (!TextUtils.isEmpty(mChatSession.getChatNick())) {  
  3.             setTitleBar(mChatSession.getChatNick(), truetrue);  
  4.         } else {  
  5.             setTitleBar(mChatSession.getChatInfo().getName(), truetrue);  
  6.         }  
  7.         mIvMenu.setImageResource(R.mipmap.people);  
  8.         // 打开详细资料界面  
  9.         mIvMenu.setOnClickListener(new View.OnClickListener() {  
  10.             @Override  
  11.             public void onClick(View v) {  
  12.                 Intent intent = new Intent(P2PChatActivity.this, FriendInfoActivity.class);  
  13.                 intent.putExtra("NimUserInfo", chatInfo);  
  14.                 intent.putExtra("FLAG", FriendInfoActivity.FLAG_PURE_SHOW_FRIEND);  
  15.                 startActivity(intent);  
  16.             }  
  17.         });  
  18.     }  

4.初始化消息列表:

[java] view plain copy
  1. private void initMsgList() {  
  2.         mLayoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();  
  3.         mMsgList = new ArrayList<>();  
  4.         mListAdapter = new MessageListAdapter(this, mMsgList, mChatSession);  
  5.         mListAdapter.setOnItemClickListener(new OnItemClickListener() {  
  6.             @Override  
  7.             public void onItemClick(RViewHolder holder, IMMessage message) {  
  8.                 switch (message.getMsgType()) {  
  9.                     case image:  
  10.                         showAttachOnActivity(ShowImageActivity.class, message);  
  11.                         break;  
  12.                     case audio:  
  13.                         playAudio(holder, message);  
  14.                         break;  
  15.                     case video:  
  16.                         //showAttachOnActivity(ShowVideoActivity.class, message);  
  17.                         break;  
  18.                     case location:  
  19.                         showAttachOnActivity(ShowLocActivity.class, message);  
  20.                         break;  
  21.                 }  
  22.             }  
  23.         });  
  24.   
  25.         mRecyclerView.setAdapter(mListAdapter);  
  26.         mRecyclerView.setLoadingListener(new MsgRecyclerView.OnLoadingListener() {  
  27.             @Override  
  28.             public void loadPreMessage() {  
  29.                 loadMessage();  
  30.             }  
  31.         });  
  32.     }  

5.初始化各类消息监听

[java] view plain copy
  1. private void initListener() {  
  2.   
  3.        mRecyclerView.setOnTouchListener(new MyTouchListener());  
  4.   
  5.        final View decorView = getWindow().getDecorView();  
  6.        decorView.getViewTreeObserver()  
  7.                .addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {  
  8.                    private int previousKeyboardHeight = 0;  
  9.                    @Override  
  10.                    public void onGlobalLayout() {  
  11.                        Rect rect = new Rect();  
  12.                        getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);  
  13.                        int displayHeight = rect.bottom;  
  14.                        int height = decorView.getHeight();  
  15.                        int keyboardHeight = height - displayHeight;  
  16.                        if (previousKeyboardHeight != keyboardHeight) {  
  17.                            boolean hide = (double) displayHeight / height > 0.8;  
  18.                            if (!hide){  
  19.                                //点击文本框后弹出键盘,消息滚到最后一条  
  20.                                mLayoutManager.scrollToPosition(mMsgList.size());  
  21.                            }  
  22.                        }  
  23.                    }  
  24.                });  
  25.   
  26.        // 网易云信消息接收监听  
  27.        mMsgReceiveObserver = new Observer<List<IMMessage>>() {  
  28.            @Override  
  29.            public void onEvent(List<IMMessage> imMessages) {  
  30.                // 通过判断,决定是否添加收到消息的时间  
  31.                IMMessage imMessage = imMessages.get(0);  
  32.                if (mMsgList.isEmpty()) {  
  33.                    if (imMessage.getSessionType() == SessionTypeEnum.P2P  
  34.                            && imMessage.getSessionId().equals(mChatSession.getChatAccount())) {  
  35.                        mMsgList.add(mChatHandler.createTimeMessage(imMessage));  
  36.                    }  
  37.                } else {  
  38.                    IMMessage lastMsg = mMsgList.get(mMsgList.size() - 1);  
  39.                    if (imMessage.getSessionType() == SessionTypeEnum.P2P  
  40.                            && imMessage.getSessionId().equals(mChatSession.getChatAccount())  
  41.                            && imMessage.getTime() - lastMsg.getTime() > TEN_MINUTE) {  
  42.                        mMsgList.add(mChatHandler.createTimeMessage(imMessage));  
  43.                    }  
  44.                }  
  45.   
  46.                // 将收到的消息添加到列表中  
  47.                int receiveCount = 0;  
  48.                for (IMMessage message : imMessages) {  
  49.                    if (message.getSessionType() == SessionTypeEnum.P2P  
  50.                            && message.getSessionId().equals(mChatSession.getChatAccount())) {  
  51.                        mMsgList.add(message);  
  52.                        receiveCount++;  
  53.                    }  
  54.                }  
  55.   
  56.                if (receiveCount > 0) {  
  57.                    mListAdapter.notifyDataSetChanged();  
  58.   
  59.                    // 对于整个 mListAdapter 来说,第0个 item 是 HeadView  
  60.                    // 即mMsgList的第 i 条数据,相当于mListAdapter来说是第 i+1 条  
  61.                    mLayoutManager.scrollToPosition(mMsgList.size());  
  62.                }  
  63.            }  
  64.        };  
  65.        // 网易云信消息状态监听  
  66.        mMsgStatusObserver = new Observer<IMMessage>() {  
  67.            @Override  
  68.            public void onEvent(IMMessage message) {  
  69.                // 收到消息状态更新,从后往前更新消息状态  
  70.                for (int i = mMsgList.size() - 1; i >= 0; i--) {  
  71.                    // 时间 item  UUid  为空  
  72.                    if (TextUtils.isEmpty(mMsgList.get(i).getUuid())) {  
  73.                        continue;  
  74.                    }  
  75.                    if (mMsgList.get(i).getUuid().equals(message.getUuid())) {  
  76.                        mMsgList.get(i).setStatus(message.getStatus());  
  77.                        mMsgList.get(i).setAttachStatus(message.getAttachStatus());  
  78.   
  79.                        // 对于整个 mListAdapter 来说,第0个 item 是 HeadView  
  80.                        // 即 mMsgList 的第 i 条数据,相当于mListAdapter来说是第 i+1 条  
  81.                        mListAdapter.notifyItemChanged(i + 1);  
  82.                        break;  
  83.                    }  
  84.                }  
  85.            }  
  86.        };  
  87.   
  88.        // 附件传输进度监听  
  89.        mProgressObserver = new Observer<AttachmentProgress>() {  
  90.            @Override  
  91.            public void onEvent(AttachmentProgress progress) {  
  92.   
  93.            }  
  94.        };  
  95.    }  

6.消息加载与加载回调

[java] view plain copy
  1. private void loadMessage() {  
  2.        if (mMsgList.isEmpty()) {  
  3.            // 记录为空时,以当前时间为锚点  
  4.            IMMessage anchorMessage = MessageBuilder.createEmptyMessage(mChatSession.getSessionId(),  
  5.                    mChatSession.getSessionType(), System.currentTimeMillis());  
  6.            mChatHandler.loadMessage(anchorMessage, this);  
  7.        } else {  
  8.            // 否则,以最上一条消息为锚点  
  9.            IMMessage firstMsg = mMsgList.get(0);  
  10.            if (TextUtils.isEmpty(firstMsg.getUuid())) {  
  11.                firstMsg = mMsgList.get(1);  
  12.            }  
  13.            mChatHandler.loadMessage(firstMsg, this);//下面的loadSuccess/Fail即为ChatMsgHandler.OnLoadMsgListener的接口重写  
  14.        }  
  15.    }  
  16.   
  17.    @Override  
  18.    public void loadSuccess(List<IMMessage> messages, IMMessage anchorMessage) {  
  19.        mRecyclerView.hideHeadView();  
  20.   
  21.        boolean scroll = false;  
  22.        // 如果原本没有,为第一次加载,需要在加载完成后移动到最后一项  
  23.        if (mMsgList.isEmpty()) {  
  24.            scroll = true;  
  25.        }  
  26.        if (!messages.isEmpty()) {  
  27.            mMsgList.addAll(0, mChatHandler.dealLoadMessage(messages, anchorMessage));  
  28.            mListAdapter.notifyDataSetChanged();//mListAdapter为被观察者  
  29.        }  
  30.        if (scroll) {  
  31.            mLayoutManager.scrollToPosition(mMsgList.size());  
  32.        }  
  33.    }  
  34.   
  35.   
  36.    @Override  
  37.    public void loadFail(String message) {  
  38.        mRecyclerView.hideHeadView();  
  39.        ToastUtils.showMessage(this"消息加载失败:" + message);  
  40.        Log.e(TAG, "load message fail:" + message);  
  41.    }  

7.页面跳转回调(选择图片界面和定位界面)

[java] view plain copy
  1. @Override  
  2.     protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
  3.         super.onActivityResult(requestCode, resultCode, data);  
  4.         if (requestCode == SELECT_PHOTO) {  
  5.             if (resultCode == RESULT_OK) {  
  6.                 String[] images = data.getStringArrayExtra("images");  
  7.                 for (String path : images) {  
  8.                     sendMessage(mChatHandler.createImageMessage(path));  
  9.                 }  
  10.   
  11.             }  
  12.         } else if (requestCode == SELECT_LOCATION) {  
  13.             if (resultCode == RESULT_OK) {  
  14.                 String address = data.getStringExtra("address");  
  15.                 LatLonPoint loc = data.getParcelableExtra("location");  
  16.                 sendMessage(mChatHandler.createLocMessage(loc, address));  
  17.             }  
  18.         }  
  19.     }  
[java] view plain copy
  1.   
[java] view plain copy
  1. /*** 消息发送 ***/  
  2.    //自己的界面用下述方式刷新,对方用网易云信消息接收监听mMsgReceiveObserver刷新  
  3.    private void sendMessage(IMMessage message) {  
  4.   
  5.        if (mMsgList.isEmpty() ||  
  6.                message.getTime() - mMsgList.get(mMsgList.size() - 1).getTime() > TEN_MINUTE) {  
  7.            mMsgList.add(mChatHandler.createTimeMessage(message));  
  8.        }  
  9.   
  10.        // 将新消息加入列表并刷新界面  
  11.        mMsgList.add(message);  
  12.        mListAdapter.notifyItemInserted(mMsgList.size());  
  13.        mLayoutManager.scrollToPosition(mMsgList.size());  
  14.        // 发送消息并监听消息发送状态  
  15.        NIMClient.getService(MsgService.class).sendMessage(message, false);  
  16.    }  


8.输入面板事件回调:

[java] view plain copy
  1. @Override  
  2.    public void sendBtnClick(String textMessage) {  
  3.        sendMessage(mChatHandler.createTextMessage(textMessage));  
  4.    }  
  5.   
  6.    @Override  
  7.    public void photoTextBtnClick(String path){  
  8.        sendMessage(mChatHandler.createImageMessage(path));  
  9.    }  
  10.   
  11.    @Override  
  12.    public void photoBtnClick() {  
  13.        Intent intent = new Intent(this, PhotoSelectActivity.class);  
  14.        startActivityForResult(intent, SELECT_PHOTO);  
  15.    }  
  16.   
  17.    @Override  
  18.    public void locationBtnClick() {  
  19.        Intent intent = new Intent(this, SelectLocActivity.class);  
  20.        startActivityForResult(intent, SELECT_LOCATION);  
  21.    }  
  22.   
  23.   
  24.    @Override  
  25.    public void audioRecordFinish(String audioFilePath, long recordTime) {  
  26.        sendMessage(mChatHandler.createAudioMessage(audioFilePath, recordTime));  
  27.    }  
  28.   
  29.    @Override  
  30.    public void audioRecordError(String message) {  
  31.        ToastUtils.showMessage(this"录音出错:" + message);  
  32.    }  
  33.   
  34.    @Override  
  35.    public void exLayoutShow() {  
  36.        mLayoutManager.scrollToPosition(mMsgList.size());  
  37.    }  
  38.   
  39.    /***  标题栏返回按钮事件 *****/  
  40.    @OnClick(R.id.iv_back_btn)  
  41.    public void finishActivity() {  
  42.        KeyboardUtil.inputBmpList.clear();  
  43.        ChatInputLayout.currentBmpList.clear();  
  44.        this.finish();  
  45.    }  
  46.   
  47.    //系统返回键  
  48.    public void onBackPressed() {  
  49.        KeyboardUtil.inputBmpList.clear();  
  50.        ChatInputLayout.currentBmpList.clear();  
  51.        this.finish();  
  52.    }  

9.消息列表触摸事件:隐藏键盘

[java] view plain copy
  1. /******  消息列表触摸事件   *******/  
  2.    private class MyTouchListener implements View.OnTouchListener {  
  3.        @Override  
  4.        public boolean onTouch(View v, MotionEvent event) {  
  5.            if (event.getAction() == MotionEvent.ACTION_DOWN) {  
  6.                mInputLayout.hideOverView();  
  7.            }  
  8.            return false;  
  9.        }  
  10.    }  

10.activity生命周期,注册或注销各类监听

[java] view plain copy
  1. @Override  
  2.    protected void onResume() {  
  3.        super.onResume();  
  4.        // 设置当前聊天对象,即如果为mChatPersonAccount用户的消息,则不在通知了进行通知  
  5.        NIMClient.getService(MsgService.class).setChattingAccount(mChatSession.getChatAccount(),  
  6.                mChatSession.getSessionType());  
  7.   
  8.        AudioPlayManager.resume();  
  9.    }  
  10.   
  11.    @Override  
  12.    protected void onPause() {  
  13.        super.onPause();  
  14.        // 当前无聊天对象,需要通知栏提醒  
  15.        NIMClient.getService(MsgService.class)  
  16.                .setChattingAccount(MsgService.MSG_CHATTING_ACCOUNT_NONE,  
  17.                        SessionTypeEnum.None);  
  18.   
  19.        AudioPlayManager.pause();  
  20.    }  
  21.   
  22.    @Override  
  23.    protected void onDestroy() {  
  24.        super.onDestroy();  
  25.        // 注销各类监听事件  
  26.        NIMClient.getService(MsgServiceObserve.class)  
  27.                .observeReceiveMessage(mMsgReceiveObserver, false);  
  28.        NIMClient.getService(MsgServiceObserve.class)  
  29.                .observeMsgStatus(mMsgStatusObserver, false);  
  30.        NIMClient.getService(MsgServiceObserve.class)  
  31.                .observeAttachmentProgress(mProgressObserver, true);  
  32.   
  33.        AudioPlayManager.release();  
  34.    }  



张静:

本周,开始写MeFragment中可选择进入的ContentActivity(个性字体库)

1. activity_words_album_layout.xml

[java] view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:orientation="vertical">  
  6.   
  7.     <include layout="@layout/title_layout" />  
  8.   
  9.     <ScrollView  
  10.         android:layout_width="wrap_content"  
  11.         android:layout_height="wrap_content"  
  12.         android:scrollbars="none">  
  13.   
  14.         <LinearLayout  
  15.             android:layout_width="match_parent"  
  16.             android:layout_height="wrap_content"  
  17.             android:orientation="vertical">  
  18.             <LinearLayout  
  19.                 android:layout_width="match_parent"  
  20.                 android:layout_height="wrap_content"  
  21.                 android:layout_marginTop="5dp"  
  22.                 android:orientation="horizontal">  
  23.                 <TextView  
  24.                     android:layout_width="wrap_content"  
  25.                     android:layout_height="wrap_content"  
  26.                     android:layout_marginLeft="5dp"  
  27.                     android:layout_marginRight="75px"  
  28.                     android:text="!"/>  
  29.                 <TextView  
  30.                     android:id="@+id/asc034"  
  31.                     android:layout_width="wrap_content"  
  32.                     android:layout_height="wrap_content"  
  33.                     android:layout_marginRight="75px"  
  34.                     android:text="1"/>  
  35.                 <TextView  
  36.                     android:layout_width="wrap_content"  
  37.                     android:layout_height="wrap_content"  
  38.                     android:layout_marginRight="75px"  
  39.                     android:text="#"/>  
  40.                 <TextView  
  41.                     android:layout_width="wrap_content"  
  42.                     android:layout_height="wrap_content"  
  43.                     android:layout_marginRight="75px"  
  44.                     android:text="$"/>  
  45.                 <TextView  
  46.                     android:layout_width="wrap_content"  
  47.                     android:layout_height="wrap_content"  
  48.                     android:layout_marginRight="75px"  
  49.                     android:text="%"/>  
  50.                 <TextView  
  51.                     android:id="@+id/asc038"  
  52.                     android:layout_width="wrap_content"  
  53.                     android:layout_height="wrap_content"  
  54.                     android:layout_marginRight="75px"  
  55.                     android:text=" "/>  
  56.                 <TextView  
  57.                     android:layout_width="wrap_content"  
  58.                     android:layout_height="wrap_content"  
  59.                     android:layout_marginRight="75px"  
  60.                     android:text="'"/>  
  61.             </LinearLayout>  
  62.   
  63.             <LinearLayout  
  64.                 android:layout_width="match_parent"  
  65.                 android:layout_height="wrap_content"  
  66.                 android:layout_marginTop="5dp"  
  67.                 android:orientation="horizontal">  
  68.                 <ImageView  
  69.                     android:id="@+id/asc_033"  
  70.                     android:tag="0"  
  71.                     android:layout_width="75px"  
  72.                     android:layout_height="100px"  
  73.                     android:layout_marginLeft="5dp"/>  
  74.                 <ImageView  
  75.                     android:id="@+id/asc_034"  
  76.                     android:tag="1"  
  77.                     android:layout_width="75px"  
  78.                     android:layout_height="100px"  
  79.                     android:layout_marginLeft="5dp"/>  
  80.                 <ImageView  
  81.                     android:id="@+id/asc_035"  
  82.                     android:tag="2"  
  83.                     android:layout_width="75px"  
  84.                     android:layout_height="100px"  
  85.                     android:layout_marginLeft="5dp"/>  
  86.                 <ImageView  
  87.                     android:id="@+id/asc_036"  
  88.                     android:tag="3"  
  89.                     android:layout_width="75px"  
  90.                     android:layout_height="100px"  
  91.                     android:layout_marginLeft="5dp"/>  
  92.                 <ImageView  
  93.                     android:id="@+id/asc_037"  
  94.                     android:tag="4"  
  95.                     android:layout_width="75px"  
  96.                     android:layout_height="100px"  
  97.                     android:layout_marginLeft="5dp"/>  
  98.   
  99.                 <ImageView  
  100.                     android:id="@+id/asc_038"  
  101.                     android:tag="5"  
  102.                     android:layout_width="75px"  
  103.                     android:layout_height="100px"  
  104.                     android:layout_marginLeft="5dp" />  
  105.   
  106.                 <ImageView  
  107.                     android:id="@+id/asc_039"  
  108.                     android:tag="6"  
  109.                     android:layout_width="75px"  
  110.                     android:layout_height="100px"  
  111.                     android:layout_marginLeft="5dp"/>  
  112.             </LinearLayout>  
  113.   
  114.             <LinearLayout  
  115.                 android:layout_width="match_parent"  
  116.                 android:layout_height="wrap_content"  
  117.                 android:layout_marginTop="5dp"  
  118.                 android:orientation="horizontal">  
  119.                 <TextView  
  120.                     android:layout_width="wrap_content"  
  121.                     android:layout_height="wrap_content"  
  122.                     android:layout_marginLeft="5dp"  
  123.                     android:layout_marginRight="75px"  
  124.                     android:text="("/>  
  125.                 <TextView  
  126.                     android:layout_width="wrap_content"  
  127.                     android:layout_height="wrap_content"  
  128.                     android:layout_marginRight="75px"  
  129.                     android:text=")"/>  
  130.                 <TextView  
  131.                     android:layout_width="wrap_content"  
  132.                     android:layout_height="wrap_content"  
  133.                     android:layout_marginRight="75px"  
  134.                     android:text="*"/>  
  135.                 <TextView  
  136.                     android:layout_width="wrap_content"  
  137.                     android:layout_height="wrap_content"  
  138.                     android:layout_marginRight="75px"  
  139.                     android:text="+"/>  
  140.                 <TextView  
  141.                     android:layout_width="wrap_content"  
  142.                     android:layout_height="wrap_content"  
  143.                     android:layout_marginRight="75px"  
  144.                     android:text=","/>  
  145.                 <TextView  
  146.                     android:layout_width="wrap_content"  
  147.                     android:layout_height="wrap_content"  
  148.                     android:layout_marginRight="75px"  
  149.                     android:text="-"/>  
  150.                 <TextView  
  151.                     android:layout_width="wrap_content"  
  152.                     android:layout_height="wrap_content"  
  153.                     android:layout_marginRight="75px"  
  154.                     android:text="."/>  
  155.             </LinearLayout>  
  156.   
  157.             <LinearLayout  
  158.                 android:layout_width="match_parent"  
  159.                 android:layout_height="wrap_content"  
  160.                 android:layout_marginTop="5dp"  
  161.                 android:orientation="horizontal">  
  162.                 <ImageView  
  163.                     android:id="@+id/asc_040"  
  164.                     android:tag="7"  
  165.                     android:layout_width="75px"  
  166.                     android:layout_height="100px"  
  167.                     android:layout_marginLeft="5dp"/>  
  168.                 <ImageView  
  169.                     android:id="@+id/asc_041"  
  170.                     android:tag="8"  
  171.                     android:layout_width="75px"  
  172.                     android:layout_height="100px"  
  173.                     android:layout_marginLeft="5dp"/>  
  174.                 <ImageView  
  175.                     android:id="@+id/asc_042"  
  176.                     android:tag="9"  
  177.                     android:layout_width="75px"  
  178.                     android:layout_height="100px"  
  179.                     android:layout_marginLeft="5dp"/>  
  180.                 <ImageView  
  181.                     android:id="@+id/asc_043"  
  182.                     android:tag="10"  
  183.                     android:layout_width="75px"  
  184.                     android:layout_height="100px"  
  185.                     android:layout_marginLeft="5dp"/>  
  186.                 <ImageView  
  187.                     android:id="@+id/asc_044"  
  188.                     android:tag="11"  
  189.                     android:layout_width="75px"  
  190.                     android:layout_height="100px"  
  191.                     android:layout_marginLeft="5dp"/>  
  192.                 <ImageView  
  193.                     android:id="@+id/asc_045"  
  194.                     android:tag="12"  
  195.                     android:layout_width="75px"  
  196.                     android:layout_height="100px"  
  197.                     android:layout_marginLeft="5dp"/>  
  198.                 <ImageView  
  199.                     android:id="@+id/asc_046"  
  200.                     android:tag="13"  
  201.                     android:layout_width="75px"  
  202.                     android:layout_height="100px"  
  203.                     android:layout_marginLeft="5dp"/>  
  204.             </LinearLayout>  
  205.   
  206.             <LinearLayout  
  207.                 android:layout_width="match_parent"  
  208.                 android:layout_height="wrap_content"  
  209.                 android:layout_marginTop="5dp"  
  210.                 android:orientation="horizontal">  
  211.                 <TextView  
  212.                     android:layout_width="wrap_content"  
  213.                     android:layout_height="wrap_content"  
  214.                     android:layout_marginLeft="5dp"  
  215.                     android:layout_marginRight="75px"  
  216.                     android:text="/"/>  
  217.                 <TextView  
  218.                     android:layout_width="wrap_content"  
  219.                     android:layout_height="wrap_content"  
  220.                     android:layout_marginRight="75px"  
  221.                     android:text="0"/>  
  222.                 <TextView  
  223.                     android:layout_width="wrap_content"  
  224.                     android:layout_height="wrap_content"  
  225.                     android:layout_marginRight="75px"  
  226.                     android:text="1"/>  
  227.                 <TextView  
  228.                     android:layout_width="wrap_content"  
  229.                     android:layout_height="wrap_content"  
  230.                     android:layout_marginRight="75px"  
  231.                     android:text="2"/>  
  232.                 <TextView  
  233.                     android:layout_width="wrap_content"  
  234.                     android:layout_height="wrap_content"  
  235.                     android:layout_marginRight="75px"  
  236.                     android:text="3"/>  
  237.                 <TextView  
  238.                     android:layout_width="wrap_content"  
  239.                     android:layout_height="wrap_content"  
  240.                     android:layout_marginRight="75px"  
  241.                     android:text="4"/>  
  242.                 <TextView  
  243.                     android:layout_width="wrap_content"  
  244.                     android:layout_height="wrap_content"  
  245.                     android:layout_marginRight="75px"  
  246.                     android:text="5"/>  
  247.             </LinearLayout>  
  248.   
  249.             <LinearLayout  
  250.                 android:layout_width="match_parent"  
  251.                 android:layout_height="wrap_content"  
  252.                 android:layout_marginTop="5dp"  
  253.                 android:orientation="horizontal">  
  254.                 <ImageView  
  255.                     android:id="@+id/asc_047"  
  256.                     android:tag="14"  
  257.                     android:layout_width="75px"  
  258.                     android:layout_height="100px"  
  259.                     android:layout_marginLeft="5dp"/>  
  260.                 <ImageView  
  261.                     android:id="@+id/asc_048"  
  262.                     android:tag="15"  
  263.                     android:layout_width="75px"  
  264.                     android:layout_height="100px"  
  265.                     android:layout_marginLeft="5dp"/>  
  266.                 <ImageView  
  267.                     android:id="@+id/asc_049"  
  268.                     android:tag="16"  
  269.                     android:layout_width="75px"  
  270.                     android:layout_height="100px"  
  271.                     android:layout_marginLeft="5dp"/>  
  272.                 <ImageView  
  273.                     android:id="@+id/asc_050"  
  274.                     android:tag="17"  
  275.                     android:layout_width="75px"  
  276.                     android:layout_height="100px"  
  277.                     android:layout_marginLeft="5dp"/>  
  278.                 <ImageView  
  279.                     android:id="@+id/asc_051"  
  280.                     android:tag="18"  
  281.                     android:layout_width="75px"  
  282.                     android:layout_height="100px"  
  283.                     android:layout_marginLeft="5dp"/>  
  284.                 <ImageView  
  285.                     android:id="@+id/asc_052"  
  286.                     android:tag="19"  
  287.                     android:layout_width="75px"  
  288.                     android:layout_height="100px"  
  289.                     android:layout_marginLeft="5dp"/>  
  290.                 <ImageView  
  291.                     android:id="@+id/asc_053"  
  292.                     android:tag="20"  
  293.                     android:layout_width="75px"  
  294.                     android:layout_height="100px"  
  295.                     android:layout_marginLeft="5dp"/>  
  296.             </LinearLayout>  
  297.   
  298.             <LinearLayout  
  299.                 android:layout_width="match_parent"  
  300.                 android:layout_height="wrap_content"  
  301.                 android:layout_marginTop="5dp"  
  302.                 android:orientation="horizontal">  
  303.                 <TextView  
  304.                     android:layout_width="wrap_content"  
  305.                     android:layout_height="wrap_content"  
  306.                     android:layout_marginLeft="5dp"  
  307.                     android:layout_marginRight="75px"  
  308.                     android:text="6"/>  
  309.                 <TextView  
  310.                     android:layout_width="wrap_content"  
  311.                     android:layout_height="wrap_content"  
  312.                     android:layout_marginRight="75px"  
  313.                     android:text="7"/>  
  314.                 <TextView  
  315.                     android:layout_width="wrap_content"  
  316.                     android:layout_height="wrap_content"  
  317.                     android:layout_marginRight="75px"  
  318.                     android:text="8"/>  
  319.                 <TextView  
  320.                     android:layout_width="wrap_content"  
  321.                     android:layout_height="wrap_content"  
  322.                     android:layout_marginRight="75px"  
  323.                     android:text="9"/>  
  324.                 <TextView  
  325.                     android:layout_width="wrap_content"  
  326.                     android:layout_height="wrap_content"  
  327.                     android:layout_marginRight="75px"  
  328.                     android:text=":"/>  
  329.                 <TextView  
  330.                     android:layout_width="wrap_content"  
  331.                     android:layout_height="wrap_content"  
  332.                     android:layout_marginRight="75px"  
  333.                     android:text=";"/>  
  334.                 <TextView  
  335.                     android:id="@+id/asc60"  
  336.                     android:layout_width="wrap_content"  
  337.                     android:layout_height="wrap_content"  
  338.                     android:layout_marginRight="75px"  
  339.                     android:text=" "/>  
  340.             </LinearLayout>  
  341.   
  342.             <LinearLayout  
  343.                 android:layout_width="match_parent"  
  344.                 android:layout_height="wrap_content"  
  345.                 android:layout_marginTop="5dp"  
  346.                 android:orientation="horizontal">  
  347.                 <ImageView  
  348.                     android:id="@+id/asc_054"  
  349.                     android:tag="21"  
  350.                     android:layout_width="75px"  
  351.                     android:layout_height="100px"  
  352.                     android:layout_marginLeft="5dp"/>  
  353.                 <ImageView  
  354.                     android:id="@+id/asc_055"  
  355.                     android:tag="22"  
  356.                     android:layout_width="75px"  
  357.                     android:layout_height="100px"  
  358.                     android:layout_marginLeft="5dp"/>  
  359.                 <ImageView  
  360.                     android:id="@+id/asc_056"  
  361.                     android:tag="23"  
  362.                     android:layout_width="75px"  
  363.                     android:layout_height="100px"  
  364.                     android:layout_marginLeft="5dp"/>  
  365.                 <ImageView  
  366.                     android:id="@+id/asc_057"  
  367.                     android:tag="24"  
  368.                     android:layout_width="75px"  
  369.                     android:layout_height="100px"  
  370.                     android:layout_marginLeft="5dp"/>  
  371.                 <ImageView  
  372.                     android:id="@+id/asc_058"  
  373.                     android:tag="25"  
  374.                     android:layout_width="75px"  
  375.                     android:layout_height="100px"  
  376.                     android:layout_marginLeft="5dp"/>  
  377.                 <ImageView  
  378.                     android:id="@+id/asc_059"  
  379.                     android:tag="26"  
  380.                     android:layout_width="75px"  
  381.                     android:layout_height="100px"  
  382.                     android:layout_marginLeft="5dp"/>  
  383.                 <ImageView  
  384.                     android:id="@+id/asc_060"  
  385.                     android:tag="27"  
  386.                     android:layout_width="75px"  
  387.                     android:layout_height="100px"  
  388.                     android:layout_marginLeft="5dp"/>  
  389.             </LinearLayout>  
  390.   
  391.             <LinearLayout  
  392.                 android:layout_width="match_parent"  
  393.                 android:layout_height="wrap_content"  
  394.                 android:layout_marginTop="5dp"  
  395.                 android:orientation="horizontal">  
  396.                 <TextView  
  397.                     android:layout_width="wrap_content"  
  398.                     android:layout_height="wrap_content"  
  399.                     android:layout_marginLeft="5dp"  
  400.                     android:layout_marginRight="75px"  
  401.                     android:text="="/>  
  402.                 <TextView  
  403.                     android:layout_width="wrap_content"  
  404.                     android:layout_height="wrap_content"  
  405.                     android:layout_marginRight="75px"  
  406.                     android:text=">"/>  
  407.                 <TextView  
  408.                     android:id="@+id/asc063"  
  409.                     android:layout_width="wrap_content"  
  410.                     android:layout_height="wrap_content"  
  411.                     android:layout_marginRight="75px"  
  412.                     android:text=" "/>  
  413.                 <TextView  
  414.                     android:id="@+id/asc064"  
  415.                     android:layout_width="wrap_content"  
  416.                     android:layout_height="wrap_content"  
  417.                     android:layout_marginRight="75px"  
  418.                     android:text=" "/>  
  419.                 <TextView  
  420.                     android:layout_width="wrap_content"  
  421.                     android:layout_height="wrap_content"  
  422.                     android:layout_marginRight="75px"  
  423.                     android:text="A"/>  
  424.                 <TextView  
  425.                     android:layout_width="wrap_content"  
  426.                     android:layout_height="wrap_content"  
  427.                     android:layout_marginRight="75px"  
  428.                     android:text="B"/>  
  429.                 <TextView  
  430.                     android:layout_width="wrap_content"  
  431.                     android:layout_height="wrap_content"  
  432.                     android:layout_marginRight="75px"  
  433.                     android:text="C"/>  
  434.             </LinearLayout>  
  435.   
  436.             <LinearLayout  
  437.                 android:layout_width="match_parent"  
  438.                 android:layout_height="wrap_content"  
  439.                 android:layout_marginTop="5dp"  
  440.                 android:orientation="horizontal">  
  441.                 <ImageView  
  442.                     android:id="@+id/asc_061"  
  443.                     android:tag="28"  
  444.                     android:layout_width="75px"  
  445.                     android:layout_height="100px"  
  446.                     android:layout_marginLeft="5dp"/>  
  447.                 <ImageView  
  448.                     android:id="@+id/asc_062"  
  449.                     android:tag="29"  
  450.                     android:layout_width="75px"  
  451.                     android:layout_height="100px"  
  452.                     android:layout_marginLeft="5dp"/>  
  453.                 <ImageView  
  454.                     android:id="@+id/asc_063"  
  455.                     android:tag="30"  
  456.                     android:layout_width="75px"  
  457.                     android:layout_height="100px"  
  458.                     android:layout_marginLeft="5dp"/>  
  459.                 <ImageView  
  460.                     android:id="@+id/asc_064"  
  461.                     android:tag="31"  
  462.                     android:layout_width="75px"  
  463.                     android:layout_height="100px"  
  464.                     android:layout_marginLeft="5dp"/>  
  465.                 <ImageView  
  466.                     android:id="@+id/asc_065"  
  467.                     android:tag="32"  
  468.                     android:layout_width="75px"  
  469.                     android:layout_height="100px"  
  470.                     android:layout_marginLeft="5dp"/>  
  471.                 <ImageView  
  472.                     android:id="@+id/asc_066"  
  473.                     android:tag="33"  
  474.                     android:layout_width="75px"  
  475.                     android:layout_height="100px"  
  476.                     android:layout_marginLeft="5dp"/>  
  477.                 <ImageView  
  478.                     android:id="@+id/asc_067"  
  479.                     android:tag="34"  
  480.                     android:layout_width="75px"  
  481.                     android:layout_height="100px"  
  482.                     android:layout_marginLeft="5dp"/>  
  483.             </LinearLayout>  
  484.   
  485.             <LinearLayout  
  486.                 android:layout_width="match_parent"  
  487.                 android:layout_height="wrap_content"  
  488.                 android:layout_marginTop="5dp"  
  489.                 android:orientation="horizontal">  
  490.                 <TextView  
  491.                     android:layout_width="wrap_content"  
  492.                     android:layout_height="wrap_content"  
  493.                     android:layout_marginLeft="5dp"  
  494.                     android:layout_marginRight="75px"  
  495.                     android:text="D"/>  
  496.                 <TextView  
  497.                     android:layout_width="wrap_content"  
  498.                     android:layout_height="wrap_content"  
  499.                     android:layout_marginRight="75px"  
  500.                     android:text="E"/>  
  501.                 <TextView  
  502.                     android:layout_width="wrap_content"  
  503.                     android:layout_height="wrap_content"  
  504.                     android:layout_marginRight="75px"  
  505.                     android:text="F"/>  
  506.                 <TextView  
  507.                     android:layout_width="wrap_content"  
  508.                     android:layout_height="wrap_content"  
  509.                     android:layout_marginRight="75px"  
  510.                     android:text="G"/>  
  511.                 <TextView  
  512.                     android:layout_width="wrap_content"  
  513.                     android:layout_height="wrap_content"  
  514.                     android:layout_marginRight="75px"  
  515.                     android:text="H"/>  
  516.                 <TextView  
  517.                     android:layout_width="wrap_content"  
  518.                     android:layout_height="wrap_content"  
  519.                     android:layout_marginRight="75px"  
  520.                     android:text="I"/>  
  521.                 <TextView  
  522.                     android:layout_width="wrap_content"  
  523.                     android:layout_height="wrap_content"  
  524.                     android:layout_marginRight="75px"  
  525.                     android:text="J"/>  
  526.             </LinearLayout>  
  527.   
  528.             <LinearLayout  
  529.                 android:layout_width="match_parent"  
  530.                 android:layout_height="wrap_content"  
  531.                 android:layout_marginTop="5dp"  
  532.                 android:orientation="horizontal">  
  533.                 <ImageView  
  534.                     android:id="@+id/asc_068"  
  535.                     android:tag="35"  
  536.                     android:layout_width="75px"  
  537.                     android:layout_height="100px"  
  538.                     android:layout_marginLeft="5dp"/>  
  539.                 <ImageView  
  540.                     android:id="@+id/asc_069"  
  541.                     android:tag="36"  
  542.                     android:layout_width="75px"  
  543.                     android:layout_height="100px"  
  544.                     android:layout_marginLeft="5dp"/>  
  545.                 <ImageView  
  546.                     android:id="@+id/asc_070"  
  547.                     android:tag="37"  
  548.                     android:layout_width="75px"  
  549.                     android:layout_height="100px"  
  550.                     android:layout_marginLeft="5dp"/>  
  551.                 <ImageView  
  552.                     android:id="@+id/asc_071"  
  553.                     android:tag="38"  
  554.                     android:layout_width="75px"  
  555.                     android:layout_height="100px"  
  556.                     android:layout_marginLeft="5dp"/>  
  557.                 <ImageView  
  558.                     android:id="@+id/asc_072"  
  559.                     android:tag="39"  
  560.                     android:layout_width="75px"  
  561.                     android:layout_height="100px"  
  562.                     android:layout_marginLeft="5dp"/>  
  563.                 <ImageView  
  564.                     android:id="@+id/asc_073"  
  565.                     android:tag="40"  
  566.                     android:layout_width="75px"  
  567.                     android:layout_height="100px"  
  568.                     android:layout_marginLeft="5dp"/>  
  569.                 <ImageView  
  570.                     android:id="@+id/asc_074"  
  571.                     android:tag="41"  
  572.                     android:layout_width="75px"  
  573.                     android:layout_height="100px"  
  574.                     android:layout_marginLeft="5dp"/>  
  575.             </LinearLayout>  
  576.   
  577.             <LinearLayout  
  578.                 android:layout_width="match_parent"  
  579.                 android:layout_height="wrap_content"  
  580.                 android:layout_marginTop="5dp"  
  581.                 android:orientation="horizontal">  
  582.                 <TextView  
  583.                     android:layout_width="wrap_content"  
  584.                     android:layout_height="wrap_content"  
  585.                     android:layout_marginLeft="5dp"  
  586.                     android:layout_marginRight="75px"  
  587.                     android:text="K"/>  
  588.                 <TextView  
  589.                     android:layout_width="wrap_content"  
  590.                     android:layout_height="wrap_content"  
  591.                     android:layout_marginRight="75px"  
  592.                     android:text="L"/>  
  593.                 <TextView  
  594.                     android:layout_width="wrap_content"  
  595.                     android:layout_height="wrap_content"  
  596.                     android:layout_marginRight="75px"  
  597.                     android:text="M"/>  
  598.                 <TextView  
  599.                     android:layout_width="wrap_content"  
  600.                     android:layout_height="wrap_content"  
  601.                     android:layout_marginRight="75px"  
  602.                     android:text="N"/>  
  603.                 <TextView  
  604.                     android:layout_width="wrap_content"  
  605.                     android:layout_height="wrap_content"  
  606.                     android:layout_marginRight="75px"  
  607.                     android:text="O"/>  
  608.                 <TextView  
  609.                     android:layout_width="wrap_content"  
  610.                     android:layout_height="wrap_content"  
  611.                     android:layout_marginRight="75px"  
  612.                     android:text="P"/>  
  613.                 <TextView  
  614.                     android:layout_width="wrap_content"  
  615.                     android:layout_height="wrap_content"  
  616.                     android:layout_marginRight="75px"  
  617.                     android:text="Q"/>  
  618.             </LinearLayout>  
  619.   
  620.             <LinearLayout  
  621.                 android:layout_width="match_parent"  
  622.                 android:layout_height="wrap_content"  
  623.                 android:layout_marginTop="5dp"  
  624.                 android:orientation="horizontal">  
  625.                 <ImageView  
  626.                     android:id="@+id/asc_075"  
  627.                     android:tag="42"  
  628.                     android:layout_width="75px"  
  629.                     android:layout_height="100px"  
  630.                     android:layout_marginLeft="5dp"/>  
  631.                 <ImageView  
  632.                     android:id="@+id/asc_076"  
  633.                     android:tag="43"  
  634.                     android:layout_width="75px"  
  635.                     android:layout_height="100px"  
  636.                     android:layout_marginLeft="5dp"/>  
  637.                 <ImageView  
  638.                     android:id="@+id/asc_077"  
  639.                     android:tag="44"  
  640.                     android:layout_width="75px"  
  641.                     android:layout_height="100px"  
  642.                     android:layout_marginLeft="5dp"/>  
  643.                 <ImageView  
  644.                     android:id="@+id/asc_078"  
  645.                     android:tag="45"  
  646.                     android:layout_width="75px"  
  647.                     android:layout_height="100px"  
  648.                     android:layout_marginLeft="5dp"/>  
  649.                 <ImageView  
  650.                     android:id="@+id/asc_079"  
  651.                     android:tag="46"  
  652.                     android:layout_width="75px"  
  653.                     android:layout_height="100px"  
  654.                     android:layout_marginLeft="5dp"/>  
  655.                 <ImageView  
  656.                     android:id="@+id/asc_080"  
  657.                     android:tag="47"  
  658.                     android:layout_width="75px"  
  659.                     android:layout_height="100px"  
  660.                     android:layout_marginLeft="5dp"/>  
  661.                 <ImageView  
  662.                     android:id="@+id/asc_081"  
  663.                     android:tag="48"  
  664.                     android:layout_width="75px"  
  665.                     android:layout_height="100px"  
  666.                     android:layout_marginLeft="5dp"/>  
  667.             </LinearLayout>  
  668.   
  669.             <LinearLayout  
  670.                 android:layout_width="match_parent"  
  671.                 android:layout_height="wrap_content"  
  672.                 android:layout_marginTop="5dp"  
  673.                 android:orientation="horizontal">  
  674.                 <TextView  
  675.                     android:layout_width="wrap_content"  
  676.                     android:layout_height="wrap_content"  
  677.                     android:layout_marginLeft="5dp"  
  678.                     android:layout_marginRight="75px"  
  679.                     android:text="R"/>  
  680.                 <TextView  
  681.                     android:layout_width="wrap_content"  
  682.                     android:layout_height="wrap_content"  
  683.                     android:layout_marginRight="75px"  
  684.                     android:text="S"/>  
  685.                 <TextView  
  686.                     android:layout_width="wrap_content"  
  687.                     android:layout_height="wrap_content"  
  688.                     android:layout_marginRight="75px"  
  689.                     android:text="T"/>  
  690.                 <TextView  
  691.                     android:layout_width="wrap_content"  
  692.                     android:layout_height="wrap_content"  
  693.                     android:layout_marginRight="75px"  
  694.                     android:text="U"/>  
  695.                 <TextView  
  696.                     android:layout_width="wrap_content"  
  697.                     android:layout_height="wrap_content"  
  698.                     android:layout_marginRight="75px"  
  699.                     android:text="V"/>  
  700.                 <TextView  
  701.                     android:layout_width="wrap_content"  
  702.                     android:layout_height="wrap_content"  
  703.                     android:layout_marginRight="75px"  
  704.                     android:text="W"/>  
  705.                 <TextView  
  706.                     android:layout_width="wrap_content"  
  707.                     android:layout_height="wrap_content"  
  708.                     android:layout_marginRight="75px"  
  709.                     android:text="X"/>  
  710.             </LinearLayout>  
  711.   
  712.             <LinearLayout  
  713.                 android:layout_width="match_parent"  
  714.                 android:layout_height="wrap_content"  
  715.                 android:layout_marginTop="5dp"  
  716.                 android:orientation="horizontal">  
  717.                 <ImageView  
  718.                     android:id="@+id/asc_082"  
  719.                     android:tag="49"  
  720.                     android:layout_width="75px"  
  721.                     android:layout_height="100px"  
  722.                     android:layout_marginLeft="5dp"/>  
  723.                 <ImageView  
  724.                     android:id="@+id/asc_083"  
  725.                     android:tag="50"  
  726.                     android:layout_width="75px"  
  727.                     android:layout_height="100px"  
  728.                     android:layout_marginLeft="5dp"/>  
  729.                 <ImageView  
  730.                     android:id="@+id/asc_084"  
  731.                     android:tag="51"  
  732.                     android:layout_width="75px"  
  733.                     android:layout_height="100px"  
  734.                     android:layout_marginLeft="5dp"/>  
  735.                 <ImageView  
  736.                     android:id="@+id/asc_085"  
  737.                     android:tag="52"  
  738.                     android:layout_width="75px"  
  739.                     android:layout_height="100px"  
  740.                     android:layout_marginLeft="5dp"/>  
  741.                 <ImageView  
  742.                     android:id="@+id/asc_086"  
  743.                     android:tag="53"  
  744.                     android:layout_width="75px"  
  745.                     android:layout_height="100px"  
  746.                     android:layout_marginLeft="5dp"/>  
  747.                 <ImageView  
  748.                     android:id="@+id/asc_087"  
  749.                     android:tag="54"  
  750.                     android:layout_width="75px"  
  751.                     android:layout_height="100px"  
  752.                     android:layout_marginLeft="5dp"/>  
  753.                 <ImageView  
  754.                     android:id="@+id/asc_088"  
  755.                     android:tag="55"  
  756.                     android:layout_width="75px"  
  757.                     android:layout_height="100px"  
  758.                     android:layout_marginLeft="5dp"/>  
  759.             </LinearLayout>  
  760.   
  761.             <LinearLayout  
  762.                 android:layout_width="match_parent"  
  763.                 android:layout_height="wrap_content"  
  764.                 android:layout_marginTop="5dp"  
  765.                 android:orientation="horizontal">  
  766.                 <TextView  
  767.                     android:layout_width="wrap_content"  
  768.                     android:layout_height="wrap_content"  
  769.                     android:layout_marginLeft="5dp"  
  770.                     android:layout_marginRight="75px"  
  771.                     android:text="Y"/>  
  772.                 <TextView  
  773.                     android:layout_width="wrap_content"  
  774.                     android:layout_height="wrap_content"  
  775.                     android:layout_marginRight="75px"  
  776.                     android:text="Z"/>  
  777.                 <TextView  
  778.                     android:layout_width="wrap_content"  
  779.                     android:layout_height="wrap_content"  
  780.                     android:layout_marginRight="75px"  
  781.                     android:text="["/>  
  782.                 <TextView  
  783.                     android:id="@+id/asc092"  
  784.                     android:layout_width="wrap_content"  
  785.                     android:layout_height="wrap_content"  
  786.                     android:layout_marginRight="75px"  
  787.                     android:text=" " />  
  788.                 <TextView  
  789.                     android:layout_width="wrap_content"  
  790.                     android:layout_height="wrap_content"  
  791.                     android:layout_marginRight="75px"  
  792.                     android:text="]"/>  
  793.                 <TextView  
  794.                     android:layout_width="wrap_content"  
  795.                     android:layout_height="wrap_content"  
  796.                     android:layout_marginRight="75px"  
  797.                     android:text="^"/>  
  798.                 <TextView  
  799.                     android:layout_width="wrap_content"  
  800.                     android:layout_height="wrap_content"  
  801.                     android:layout_marginRight="75px"  
  802.                     android:text="_"/>  
  803.             </LinearLayout>  
  804.   
  805.             <LinearLayout  
  806.                 android:layout_width="match_parent"  
  807.                 android:layout_height="wrap_content"  
  808.                 android:layout_marginTop="5dp"  
  809.                 android:orientation="horizontal">  
  810.                 <ImageView  
  811.                     android:id="@+id/asc_089"  
  812.                     android:tag="56"  
  813.                     android:layout_width="75px"  
  814.                     android:layout_height="100px"  
  815.                     android:layout_marginLeft="5dp"/>  
  816.                 <ImageView  
  817.                     android:id="@+id/asc_090"  
  818.                     android:tag="57"  
  819.                     android:layout_width="75px"  
  820.                     android:layout_height="100px"  
  821.                     android:layout_marginLeft="5dp"/>  
  822.                 <ImageView  
  823.                     android:id="@+id/asc_091"  
  824.                     android:tag="58"  
  825.                     android:layout_width="75px"  
  826.                     android:layout_height="100px"  
  827.                     android:layout_marginLeft="5dp"/>  
  828.                 <ImageView  
  829.                     android:id="@+id/asc_092"  
  830.                     android:tag="59"  
  831.                     android:layout_width="75px"  
  832.                     android:layout_height="100px"  
  833.                     android:layout_marginLeft="5dp"/>  
  834.                 <ImageView  
  835.                     android:id="@+id/asc_093"  
  836.                     android:tag="60"  
  837.                     android:layout_width="75px"  
  838.                     android:layout_height="100px"  
  839.                     android:layout_marginLeft="5dp"/>  
  840.                 <ImageView  
  841.                     android:id="@+id/asc_094"  
  842.                     android:tag="61"  
  843.                     android:layout_width="75px"  
  844.                     android:layout_height="100px"  
  845.                     android:layout_marginLeft="5dp"/>  
  846.                 <ImageView  
  847.                     android:id="@+id/asc_095"  
  848.                     android:tag="62"  
  849.                     android:layout_width="75px"  
  850.                     android:layout_height="100px"  
  851.                     android:layout_marginLeft="5dp"/>  
  852.             </LinearLayout>  
  853.   
  854.             <LinearLayout  
  855.                 android:layout_width="match_parent"  
  856.                 android:layout_height="wrap_content"  
  857.                 android:layout_marginTop="5dp"  
  858.                 android:orientation="horizontal">  
  859.                 <TextView  
  860.                     android:layout_width="wrap_content"  
  861.                     android:layout_height="wrap_content"  
  862.                     android:layout_marginLeft="5dp"  
  863.                     android:layout_marginRight="75px"  
  864.                     android:text="`"/>  
  865.                 <TextView  
  866.                     android:layout_width="wrap_content"  
  867.                     android:layout_height="wrap_content"  
  868.                     android:layout_marginRight="75px"  
  869.                     android:text="a"/>  
  870.                 <TextView  
  871.                     android:layout_width="wrap_content"  
  872.                     android:layout_height="wrap_content"  
  873.                     android:layout_marginRight="75px"  
  874.                     android:text="b"/>  
  875.                 <TextView  
  876.                     android:layout_width="wrap_content"  
  877.                     android:layout_height="wrap_content"  
  878.                     android:layout_marginRight="75px"  
  879.                     android:text="c"/>  
  880.                 <TextView  
  881.                     android:layout_width="wrap_content"  
  882.                     android:layout_height="wrap_content"  
  883.                     android:layout_marginRight="75px"  
  884.                     android:text="d"/>  
  885.                 <TextView  
  886.                     android:layout_width="wrap_content"  
  887.                     android:layout_height="wrap_content"  
  888.                     android:layout_marginRight="75px"  
  889.                     android:text="e"/>  
  890.                 <TextView  
  891.                     android:layout_width="wrap_content"  
  892.                     android:layout_height="wrap_content"  
  893.                     android:layout_marginRight="75px"  
  894.                     android:text="f"/>  
  895.             </LinearLayout>  
  896.   
  897.             <LinearLayout  
  898.                 android:layout_width="match_parent"  
  899.                 android:layout_height="wrap_content"  
  900.                 android:layout_marginTop="5dp"  
  901.                 android:orientation="horizontal">  
  902.                 <ImageView  
  903.                     android:id="@+id/asc_096"  
  904.                     android:tag="63"  
  905.                     android:layout_width="75px"  
  906.                     android:layout_height="100px"  
  907.                     android:layout_marginLeft="5dp"/>  
  908.                 <ImageView  
  909.                     android:id="@+id/asc_097"  
  910.                     android:tag="64"  
  911.                     android:layout_width="75px"  
  912.                     android:layout_height="100px"  
  913.                     android:layout_marginLeft="5dp"/>  
  914.                 <ImageView  
  915.                     android:id="@+id/asc_098"  
  916.                     android:tag="65"  
  917.                     android:layout_width="75px"  
  918.                     android:layout_height="100px"  
  919.                     android:layout_marginLeft="5dp"/>  
  920.                 <ImageView  
  921.                     android:id="@+id/asc_099"  
  922.                     android:tag="66"  
  923.                     android:layout_width="75px"  
  924.                     android:layout_height="100px"  
  925.                     android:layout_marginLeft="5dp"/>  
  926.                 <ImageView  
  927.                     android:id="@+id/asc_100"  
  928.                     android:tag="67"  
  929.                     android:layout_width="75px"  
  930.                     android:layout_height="100px"  
  931.                     android:layout_marginLeft="5dp"/>  
  932.                 <ImageView  
  933.                     android:id="@+id/asc_101"  
  934.                     android:tag="68"  
  935.                     android:layout_width="75px"  
  936.                     android:layout_height="100px"  
  937.                     android:layout_marginLeft="5dp"/>  
  938.                 <ImageView  
  939.                     android:id="@+id/asc_102"  
  940.                     android:tag="69"  
  941.                     android:layout_width="75px"  
  942.                     android:layout_height="100px"  
  943.                     android:layout_marginLeft="5dp"/>  
  944.             </LinearLayout>  
  945.   
  946.             <LinearLayout  
  947.                 android:layout_width="match_parent"  
  948.                 android:layout_height="wrap_content"  
  949.                 android:layout_marginTop="5dp"  
  950.                 android:orientation="horizontal">  
  951.                 <TextView  
  952.                     android:layout_width="wrap_content"  
  953.                     android:layout_height="wrap_content"  
  954.                     android:layout_marginLeft="5dp"  
  955.                     android:layout_marginRight="75px"  
  956.                     android:text="g"/>  
  957.                 <TextView  
  958.                     android:layout_width="wrap_content"  
  959.                     android:layout_height="wrap_content"  
  960.                     android:layout_marginRight="75px"  
  961.                     android:text="h"/>  
  962.                 <TextView  
  963.                     android:layout_width="wrap_content"  
  964.                     android:layout_height="wrap_content"  
  965.                     android:layout_marginRight="75px"  
  966.                     android:text="i"/>  
  967.                 <TextView  
  968.                     android:layout_width="wrap_content"  
  969.                     android:layout_height="wrap_content"  
  970.                     android:layout_marginRight="75px"  
  971.                     android:text="j"/>  
  972.                 <TextView  
  973.                     android:layout_width="wrap_content"  
  974.                     android:layout_height="wrap_content"  
  975.                     android:layout_marginRight="75px"  
  976.                     android:text="k"/>  
  977.                 <TextView  
  978.                     android:layout_width="wrap_content"  
  979.                     android:layout_height="wrap_content"  
  980.                     android:layout_marginRight="75px"  
  981.                     android:text="l"/>  
  982.                 <TextView  
  983.                     android:layout_width="wrap_content"  
  984.                     android:layout_height="wrap_content"  
  985.                     android:layout_marginRight="75px"  
  986.                     android:text="m"/>  
  987.             </LinearLayout>  
  988.   
  989.             <LinearLayout  
  990.                 android:layout_width="match_parent"  
  991.                 android:layout_height="wrap_content"  
  992.                 android:layout_marginTop="5dp">  
  993.                 <ImageView  
  994.                     android:id="@+id/asc_103"  
  995.                     android:tag="70"  
  996.                     android:layout_width="75px"  
  997.                     android:layout_height="100px"  
  998.                     android:layout_marginLeft="5dp"/>  
  999.                 <ImageView  
  1000.                     android:id="@+id/asc_104"  
  1001.                     android:tag="71"  
  1002.                     android:layout_width="75px"  
  1003.                     android:layout_height="100px"  
  1004.                     android:layout_marginLeft="5dp"/>  
  1005.                 <ImageView  
  1006.                     android:id="@+id/asc_105"  
  1007.                     android:tag="72"  
  1008.                     android:layout_width="75px"  
  1009.                     android:layout_height="100px"  
  1010.                     android:layout_marginLeft="5dp"/>  
  1011.                 <ImageView  
  1012.                     android:id="@+id/asc_106"  
  1013.                     android:tag="73"  
  1014.                     android:layout_width="75px"  
  1015.                     android:layout_height="100px"  
  1016.                     android:layout_marginLeft="5dp"/>  
  1017.                 <ImageView  
  1018.                     android:id="@+id/asc_107"  
  1019.                     android:tag="74"  
  1020.                     android:layout_width="75px"  
  1021.                     android:layout_height="100px"  
  1022.                     android:layout_marginLeft="5dp"/>  
  1023.                 <ImageView  
  1024.                     android:id="@+id/asc_108"  
  1025.                     android:tag="75"  
  1026.                     android:layout_width="75px"  
  1027.                     android:layout_height="100px"  
  1028.                     android:layout_marginLeft="5dp"/>  
  1029.                 <ImageView  
  1030.                     android:id="@+id/asc_109"  
  1031.                     android:tag="76"  
  1032.                     android:layout_width="75px"  
  1033.                     android:layout_height="100px"  
  1034.                     android:layout_marginLeft="5dp"/>  
  1035.             </LinearLayout>  
  1036.   
  1037.             <LinearLayout  
  1038.                 android:layout_width="match_parent"  
  1039.                 android:layout_height="wrap_content"  
  1040.                 android:layout_marginTop="5dp"  
  1041.                 android:orientation="horizontal">  
  1042.                 <TextView  
  1043.                     android:layout_width="wrap_content"  
  1044.                     android:layout_height="wrap_content"  
  1045.                     android:layout_marginLeft="5dp"  
  1046.                     android:layout_marginRight="75px"  
  1047.                     android:text="n"/>  
  1048.                 <TextView  
  1049.                     android:layout_width="wrap_content"  
  1050.                     android:layout_height="wrap_content"  
  1051.                     android:layout_marginRight="75px"  
  1052.                     android:text="o"/>  
  1053.                 <TextView  
  1054.                     android:layout_width="wrap_content"  
  1055.                     android:layout_height="wrap_content"  
  1056.                     android:layout_marginRight="75px"  
  1057.                     android:text="p"/>  
  1058.                 <TextView  
  1059.                     android:layout_width="wrap_content"  
  1060.                     android:layout_height="wrap_content"  
  1061.                     android:layout_marginRight="75px"  
  1062.                     android:text="q"/>  
  1063.                 <TextView  
  1064.                     android:layout_width="wrap_content"  
  1065.                     android:layout_height="wrap_content"  
  1066.                     android:layout_marginRight="75px"  
  1067.                     android:text="r"/>  
  1068.                 <TextView  
  1069.                     android:layout_width="wrap_content"  
  1070.                     android:layout_height="wrap_content"  
  1071.                     android:layout_marginRight="75px"  
  1072.                     android:text="s"/>  
  1073.                 <TextView  
  1074.                     android:layout_width="wrap_content"  
  1075.                     android:layout_height="wrap_content"  
  1076.                     android:layout_marginRight="75px"  
  1077.                     android:text="t"/>  
  1078.             </LinearLayout>  
  1079.   
  1080.             <LinearLayout  
  1081.                 android:layout_width="match_parent"  
  1082.                 android:layout_height="wrap_content"  
  1083.                 android:layout_marginTop="5dp"  
  1084.                 android:orientation="horizontal">  
  1085.                 <ImageView  
  1086.                     android:id="@+id/asc_110"  
  1087.                     android:tag="77"  
  1088.                     android:layout_width="75px"  
  1089.                     android:layout_height="100px"  
  1090.                     android:layout_marginLeft="5dp"/>  
  1091.                 <ImageView  
  1092.                     android:id="@+id/asc_111"  
  1093.                     android:tag="78"  
  1094.                     android:layout_width="75px"  
  1095.                     android:layout_height="100px"  
  1096.                     android:layout_marginLeft="5dp"/>  
  1097.                 <ImageView  
  1098.                     android:id="@+id/asc_112"  
  1099.                     android:tag="79"  
  1100.                     android:layout_width="75px"  
  1101.                     android:layout_height="100px"  
  1102.                     android:layout_marginLeft="5dp"/>  
  1103.                 <ImageView  
  1104.                     android:id="@+id/asc_113"  
  1105.                     android:tag="80"  
  1106.                     android:layout_width="75px"  
  1107.                     android:layout_height="100px"  
  1108.                     android:layout_marginLeft="5dp"/>  
  1109.                 <ImageView  
  1110.                     android:id="@+id/asc_114"  
  1111.                     android:tag="81"  
  1112.                     android:layout_width="75px"  
  1113.                     android:layout_height="100px"  
  1114.                     android:layout_marginLeft="5dp"/>  
  1115.                 <ImageView  
  1116.                     android:id="@+id/asc_115"  
  1117.                     android:tag="82"  
  1118.                     android:layout_width="75px"  
  1119.                     android:layout_height="100px"  
  1120.                     android:layout_marginLeft="5dp"/>  
  1121.                 <ImageView  
  1122.                     android:id="@+id/asc_116"  
  1123.                     android:tag="83"  
  1124.                     android:layout_width="75px"  
  1125.                     android:layout_height="100px"  
  1126.                     android:layout_marginLeft="5dp"/>  
  1127.             </LinearLayout>  
  1128.   
  1129.             <LinearLayout  
  1130.                 android:layout_width="match_parent"  
  1131.                 android:layout_height="wrap_content"  
  1132.                 android:layout_marginTop="5dp"  
  1133.                 android:orientation="horizontal">  
  1134.                 <TextView  
  1135.                     android:layout_width="wrap_content"  
  1136.                     android:layout_height="wrap_content"  
  1137.                     android:layout_marginLeft="5dp"  
  1138.                     android:layout_marginRight="75px"  
  1139.                     android:text="u"/>  
  1140.                 <TextView  
  1141.                     android:layout_width="wrap_content"  
  1142.                     android:layout_height="wrap_content"  
  1143.                     android:layout_marginRight="75px"  
  1144.                     android:text="v"/>  
  1145.                 <TextView  
  1146.                     android:layout_width="wrap_content"  
  1147.                     android:layout_height="wrap_content"  
  1148.                     android:layout_marginRight="75px"  
  1149.                     android:text="w"/>  
  1150.                 <TextView  
  1151.                     android:layout_width="wrap_content"  
  1152.                     android:layout_height="wrap_content"  
  1153.                     android:layout_marginRight="75px"  
  1154.                     android:text="x"/>  
  1155.                 <TextView  
  1156.                     android:layout_width="wrap_content"  
  1157.                     android:layout_height="wrap_content"  
  1158.                     android:layout_marginRight="75px"  
  1159.                     android:text="y"/>  
  1160.                 <TextView  
  1161.                     android:layout_width="wrap_content"  
  1162.                     android:layout_height="wrap_content"  
  1163.                     android:layout_marginRight="75px"  
  1164.                     android:text="z"/>  
  1165.                 <TextView  
  1166.                     android:layout_width="wrap_content"  
  1167.                     android:layout_height="wrap_content"  
  1168.                     android:layout_marginRight="75px"  
  1169.                     android:text="{"/>  
  1170.             </LinearLayout>  
  1171.   
  1172.             <LinearLayout  
  1173.                 android:layout_width="match_parent"  
  1174.                 android:layout_height="wrap_content"  
  1175.                 android:layout_marginTop="5dp"  
  1176.                 android:orientation="horizontal">  
  1177.                 <ImageView  
  1178.                     android:id="@+id/asc_117"  
  1179.                     android:tag="84"  
  1180.                     android:layout_width="75px"  
  1181.                     android:layout_height="100px"  
  1182.                     android:layout_marginLeft="5dp"/>  
  1183.                 <ImageView  
  1184.                     android:id="@+id/asc_118"  
  1185.                     android:tag="85"  
  1186.                     android:layout_width="75px"  
  1187.                     android:layout_height="100px"  
  1188.                     android:layout_marginLeft="5dp"/>  
  1189.                 <ImageView  
  1190.                     android:id="@+id/asc_119"  
  1191.                     android:tag="86"  
  1192.                     android:layout_width="75px"  
  1193.                     android:layout_height="100px"  
  1194.                     android:layout_marginLeft="5dp"/>  
  1195.                 <ImageView  
  1196.                     android:id="@+id/asc_120"  
  1197.                     android:tag="87"  
  1198.                     android:layout_width="75px"  
  1199.                     android:layout_height="100px"  
  1200.                     android:layout_marginLeft="5dp"/>  
  1201.                 <ImageView  
  1202.                     android:id="@+id/asc_121"  
  1203.                     android:tag="88"  
  1204.                     android:layout_width="75px"  
  1205.                     android:layout_height="100px"  
  1206.                     android:layout_marginLeft="5dp"/>  
  1207.                 <ImageView  
  1208.                     android:id="@+id/asc_122"  
  1209.                     android:tag="89"  
  1210.                     android:layout_width="75px"  
  1211.                     android:layout_height="100px"  
  1212.                     android:layout_marginLeft="5dp"/>  
  1213.                 <ImageView  
  1214.                     android:id="@+id/asc_123"  
  1215.                     android:tag="90"  
  1216.                     android:layout_width="75px"  
  1217.                     android:layout_height="100px"  
  1218.                     android:layout_marginLeft="5dp"/>  
  1219.             </LinearLayout>  
  1220.   
  1221.             <LinearLayout  
  1222.                 android:layout_width="match_parent"  
  1223.                 android:layout_height="wrap_content"  
  1224.                 android:layout_marginTop="5dp"  
  1225.                 android:orientation="horizontal">  
  1226.                 <TextView  
  1227.                     android:layout_width="wrap_content"  
  1228.                     android:layout_height="wrap_content"  
  1229.                     android:layout_marginLeft="5dp"  
  1230.                     android:layout_marginRight="75px"  
  1231.                     android:text="|"/>  
  1232.                 <TextView  
  1233.                     android:layout_width="wrap_content"  
  1234.                     android:layout_height="wrap_content"  
  1235.                     android:layout_marginRight="75px"  
  1236.                     android:text="}"/>  
  1237.                 <TextView  
  1238.                     android:layout_width="wrap_content"  
  1239.                     android:layout_height="wrap_content"  
  1240.                     android:layout_marginRight="75px"  
  1241.                     android:text="~"/>  
  1242.             </LinearLayout>  
  1243.   
  1244.             <LinearLayout  
  1245.                 android:layout_width="match_parent"  
  1246.                 android:layout_height="wrap_content"  
  1247.                 android:layout_marginTop="5dp"  
  1248.                 android:orientation="horizontal">  
  1249.                 <ImageView  
  1250.                     android:id="@+id/asc_124"  
  1251.                     android:tag="91"  
  1252.                     android:layout_width="75px"  
  1253.                     android:layout_height="100px"  
  1254.                     android:layout_marginLeft="5dp"/>  
  1255.                 <ImageView  
  1256.                     android:id="@+id/asc_125"  
  1257.                     android:tag="92"  
  1258.                     android:layout_width="75px"  
  1259.                     android:layout_height="100px"  
  1260.                     android:layout_marginLeft="5dp"/>  
  1261.                 <ImageView  
  1262.                     android:id="@+id/asc_126"  
  1263.                     android:tag="93"  
  1264.                     android:layout_width="75px"  
  1265.                     android:layout_height="100px"  
  1266.                     android:layout_marginLeft="5dp"/>  
  1267.             </LinearLayout>  
  1268.   
  1269.         </LinearLayout>  
  1270.     </ScrollView>  
  1271.   
  1272. </LinearLayout>  


2. onCreate

TextView为设置系统默认的符号、字母、数字

tv1-tv6所想显示的符号xml中无法实现,在ContantActivity中完成

ImageView iv0-iv93为可以自定义,自己绘制的字体图片

为这些ImageView添加点击监听器

[java] view plain copy
  1. public class ContentActivity extends AppCompatActivity {  
  2.   
  3.     TextView tv1,tv2,tv3,tv4,tv5,tv6,mTvTitle;  
  4.     ImageView iv0,iv1,iv2,iv3,iv4,iv5,iv6,iv7,iv8,iv9,iv10,iv11,iv12,iv13,iv14,iv15, iv16,iv17,iv18,iv19,iv20,iv21,iv22,iv23,iv24  
  5.             ,iv25,iv26,iv27,iv28,iv29,iv30,iv31,iv32,iv33,iv34,iv35,iv36,iv37,iv38,iv39,iv40,iv41,iv42,iv43,iv44,iv45,iv46,iv47,iv48,iv49  
  6.             ,iv50,iv51,iv52,iv53,iv54,iv55,iv56,iv57,iv58,iv59,iv60,iv61,iv62,iv63,iv64,iv65,iv66,iv67,iv68,iv69,iv70,iv71,iv72,iv73,iv74,iv75  
  7.             ,iv76,iv77,iv78,iv79,iv80,iv81,iv82,iv83,iv84,iv85,iv86,iv87,iv88,iv89,iv90,iv91,iv92,iv93,mIvBack,mIvMenu;  
  8.     String[] imageStr;  
  9.     public static final int MY_ROW = 100;  
  10.     public static final int MY_COL = 75;  
  11.     int[][] myImageArray;  
  12.     Paint paint;  
  13.     private Bitmap showBitmap;  
  14.     private Canvas show_canvas;  
  15.     int ImageNum;//记录下点击的图片的编号  
  16.   
  17.     @Override  
  18.     protected void onCreate(Bundle savedInstanceState) {  
  19.         super.onCreate(savedInstanceState);  
  20.         setContentView(R.layout.activity_words_album_layout);  
  21.   
  22.         setTitleBar("字体库列表",true,false);  
  23.   
  24.         paint = new Paint();  
  25.         tv1 = (TextView)findViewById(R.id.asc034);//双引号"  
  26.         tv2 = (TextView)findViewById(R.id.asc038);//and &号  
  27.         tv3 = (TextView)findViewById(R.id.asc063);//?  
  28.         tv4 = (TextView)findViewById(R.id.asc064);//@  
  29.         tv5 = (TextView)findViewById(R.id.asc60);//<  
  30.         tv6 = (TextView)findViewById(R.id.asc092);//|  
  31.   
  32.         iv0 = (ImageView)findViewById(R.id.asc_033);//!  
  33.         iv0.setTag(0);  
  34.         iv1 = (ImageView)findViewById(R.id.asc_034);//"  
  35.         iv1.setTag(1);  
  36.         iv2 = (ImageView)findViewById(R.id.asc_035);//#  
  37.         iv2.setTag(2);  
  38.         iv3 = (ImageView)findViewById(R.id.asc_036);//$  
  39.         iv3.setTag(3);  
  40.         iv4 = (ImageView)findViewById(R.id.asc_037);//%  
  41.         iv4.setTag(4);  
  42.         iv5 = (ImageView)findViewById(R.id.asc_038);//&  
  43.         iv5.setTag(5);  
  44.         iv6 = (ImageView)findViewById(R.id.asc_039);  
  45.         iv6.setTag(6);  
  46.         iv7 = (ImageView)findViewById(R.id.asc_040);  
  47.         iv7.setTag(7);  
  48.         iv8 = (ImageView)findViewById(R.id.asc_041);  
  49.         iv8.setTag(8);  
  50.         iv9 = (ImageView)findViewById(R.id.asc_042);  
  51.         iv9.setTag(9);  
  52.         iv10 = (ImageView)findViewById(R.id.asc_043);  
  53.         iv10.setTag(10);  
  54.         iv11 = (ImageView)findViewById(R.id.asc_044);  
  55.         iv11.setTag(11);  
  56.         iv12 = (ImageView)findViewById(R.id.asc_045);  
  57.         iv12.setTag(12);  
  58.         iv13 = (ImageView)findViewById(R.id.asc_046);  
  59.         iv13.setTag(13);  
  60.         iv14 = (ImageView)findViewById(R.id.asc_047);  
  61.         iv14.setTag(14);  
  62.         iv15 = (ImageView)findViewById(R.id.asc_048);  
  63.         iv15.setTag(15);  
  64.         iv16 = (ImageView)findViewById(R.id.asc_049);  
  65.         iv16.setTag(16);  
  66.         iv17 = (ImageView)findViewById(R.id.asc_050);  
  67.         iv17.setTag(17);  
  68.         iv18 = (ImageView)findViewById(R.id.asc_051);  
  69.         iv18.setTag(18);  
  70.         iv19 = (ImageView)findViewById(R.id.asc_052);  
  71.         iv19.setTag(19);  
  72.         iv20 = (ImageView)findViewById(R.id.asc_053);  
  73.         iv20.setTag(20);  
  74.         iv21 = (ImageView)findViewById(R.id.asc_054);  
  75.         iv21.setTag(21);  
  76.         iv22 = (ImageView)findViewById(R.id.asc_055);  
  77.         iv22.setTag(22);  
  78.         iv23 = (ImageView)findViewById(R.id.asc_056);  
  79.         iv23.setTag(23);  
  80.         iv24 = (ImageView)findViewById(R.id.asc_057);  
  81.         iv24.setTag(24);  
  82.         iv25 = (ImageView)findViewById(R.id.asc_058);  
  83.         iv25.setTag(25);  
  84.         iv26 = (ImageView)findViewById(R.id.asc_059);  
  85.         iv26.setTag(26);  
  86.         iv27 = (ImageView)findViewById(R.id.asc_060);  
  87.         iv27.setTag(27);  
  88.         iv28 = (ImageView)findViewById(R.id.asc_061);  
  89.         iv28.setTag(28);  
  90.         iv29 = (ImageView)findViewById(R.id.asc_062);  
  91.         iv29.setTag(29);  
  92.         iv30 = (ImageView)findViewById(R.id.asc_063);  
  93.         iv30.setTag(30);  
  94.         iv31 = (ImageView)findViewById(R.id.asc_064);  
  95.         iv31.setTag(31);  
  96.         iv32 = (ImageView)findViewById(R.id.asc_065);  
  97.         iv32.setTag(32);  
  98.         iv33 = (ImageView)findViewById(R.id.asc_066);  
  99.         iv33.setTag(33);  
  100.         iv34 = (ImageView)findViewById(R.id.asc_067);  
  101.         iv34.setTag(34);  
  102.         iv35 = (ImageView)findViewById(R.id.asc_068);  
  103.         iv35.setTag(35);  
  104.         iv36 = (ImageView)findViewById(R.id.asc_069);  
  105.         iv36.setTag(36);  
  106.         iv37 = (ImageView)findViewById(R.id.asc_070);  
  107.         iv37.setTag(37);  
  108.         iv38 = (ImageView)findViewById(R.id.asc_071);  
  109.         iv38.setTag(38);  
  110.         iv39 = (ImageView)findViewById(R.id.asc_072);  
  111.         iv39.setTag(39);  
  112.         iv40 = (ImageView)findViewById(R.id.asc_073);  
  113.         iv40.setTag(40);  
  114.         iv41 = (ImageView)findViewById(R.id.asc_074);  
  115.         iv41.setTag(41);  
  116.         iv42 = (ImageView)findViewById(R.id.asc_075);  
  117.         iv42.setTag(42);  
  118.         iv43 = (ImageView)findViewById(R.id.asc_076);  
  119.         iv43.setTag(43);  
  120.         iv44 = (ImageView)findViewById(R.id.asc_077);  
  121.         iv44.setTag(44);  
  122.         iv45 = (ImageView)findViewById(R.id.asc_078);  
  123.         iv45.setTag(45);  
  124.         iv46 = (ImageView)findViewById(R.id.asc_079);  
  125.         iv46.setTag(46);  
  126.         iv47 = (ImageView)findViewById(R.id.asc_080);  
  127.         iv47.setTag(47);  
  128.         iv48 = (ImageView)findViewById(R.id.asc_081);  
  129.         iv48.setTag(48);  
  130.         iv49 = (ImageView)findViewById(R.id.asc_082);  
  131.         iv49.setTag(49);  
  132.         iv50 = (ImageView)findViewById(R.id.asc_083);  
  133.         iv50.setTag(50);  
  134.         iv51 = (ImageView)findViewById(R.id.asc_084);  
  135.         iv51.setTag(51);  
  136.         iv52 = (ImageView)findViewById(R.id.asc_085);  
  137.         iv52.setTag(52);  
  138.         iv53 = (ImageView)findViewById(R.id.asc_086);  
  139.         iv53.setTag(53);  
  140.         iv54 = (ImageView)findViewById(R.id.asc_087);  
  141.         iv54.setTag(54);  
  142.         iv55 = (ImageView)findViewById(R.id.asc_088);  
  143.         iv55.setTag(55);  
  144.         iv56 = (ImageView)findViewById(R.id.asc_089);  
  145.         iv56.setTag(56);  
  146.         iv57 = (ImageView)findViewById(R.id.asc_090);  
  147.         iv57.setTag(57);  
  148.         iv58 = (ImageView)findViewById(R.id.asc_091);  
  149.         iv58.setTag(58);  
  150.         iv59 = (ImageView)findViewById(R.id.asc_092);  
  151.         iv59.setTag(59);  
  152.         iv60 = (ImageView)findViewById(R.id.asc_093);  
  153.         iv60.setTag(60);  
  154.         iv61 = (ImageView)findViewById(R.id.asc_094);  
  155.         iv61.setTag(61);  
  156.         iv62 = (ImageView)findViewById(R.id.asc_095);  
  157.         iv62.setTag(62);  
  158.         iv63 = (ImageView)findViewById(R.id.asc_096);  
  159.         iv63.setTag(63);  
  160.         iv64 = (ImageView)findViewById(R.id.asc_097);  
  161.         iv64.setTag(64);  
  162.         iv65 = (ImageView)findViewById(R.id.asc_098);  
  163.         iv65.setTag(65);  
  164.         iv66 = (ImageView)findViewById(R.id.asc_099);  
  165.         iv66.setTag(66);  
  166.         iv67 = (ImageView)findViewById(R.id.asc_100);  
  167.         iv67.setTag(67);  
  168.         iv68 = (ImageView)findViewById(R.id.asc_101);  
  169.         iv68.setTag(68);  
  170.         iv69 = (ImageView)findViewById(R.id.asc_102);  
  171.         iv69.setTag(69);  
  172.         iv70 = (ImageView)findViewById(R.id.asc_103);  
  173.         iv70.setTag(70);  
  174.         iv71 = (ImageView)findViewById(R.id.asc_104);  
  175.         iv71.setTag(71);  
  176.         iv72 = (ImageView)findViewById(R.id.asc_105);  
  177.         iv72.setTag(72);  
  178.         iv73 = (ImageView)findViewById(R.id.asc_106);  
  179.         iv73.setTag(73);  
  180.         iv74 = (ImageView)findViewById(R.id.asc_107);  
  181.         iv74.setTag(74);  
  182.         iv75 = (ImageView)findViewById(R.id.asc_108);  
  183.         iv75.setTag(75);  
  184.         iv76 = (ImageView)findViewById(R.id.asc_109);  
  185.         iv76.setTag(76);  
  186.         iv77 = (ImageView)findViewById(R.id.asc_110);  
  187.         iv77.setTag(77);  
  188.         iv78 = (ImageView)findViewById(R.id.asc_111);  
  189.         iv78.setTag(78);  
  190.         iv79 = (ImageView)findViewById(R.id.asc_112);  
  191.         iv79.setTag(79);  
  192.         iv80 = (ImageView)findViewById(R.id.asc_113);  
  193.         iv80.setTag(80);  
  194.         iv81 = (ImageView)findViewById(R.id.asc_114);  
  195.         iv81.setTag(81);  
  196.         iv82 = (ImageView)findViewById(R.id.asc_115);  
  197.         iv82.setTag(82);  
  198.         iv83 = (ImageView)findViewById(R.id.asc_116);  
  199.         iv83.setTag(83);  
  200.         iv84 = (ImageView)findViewById(R.id.asc_117);  
  201.         iv84.setTag(84);  
  202.         iv85 = (ImageView)findViewById(R.id.asc_118);  
  203.         iv85.setTag(85);  
  204.         iv86 = (ImageView)findViewById(R.id.asc_119);  
  205.         iv86.setTag(86);  
  206.         iv87 = (ImageView)findViewById(R.id.asc_120);  
  207.         iv87.setTag(87);  
  208.         iv88 = (ImageView)findViewById(R.id.asc_121);  
  209.         iv88.setTag(88);  
  210.         iv89 = (ImageView)findViewById(R.id.asc_122);  
  211.         iv89.setTag(89);  
  212.         iv90 = (ImageView)findViewById(R.id.asc_123);  
  213.         iv90.setTag(90);  
  214.         iv91 = (ImageView)findViewById(R.id.asc_124);  
  215.         iv91.setTag(91);  
  216.         iv92 = (ImageView)findViewById(R.id.asc_125);  
  217.         iv92.setTag(92);  
  218.         iv93 = (ImageView)findViewById(R.id.asc_126);  
  219.         iv93.setTag(93);  
  220.   
  221.         iv0.setOnClickListener(new OnImageClickListener());  
  222.         iv1.setOnClickListener(new