Android中如何實現一個時間軸效果-創新互聯

本文小編為大家詳細介紹“Android中如何實現一個時間軸效果”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Android中如何實現一個時間軸效果”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

我們提供的服務有:成都網站設計、做網站、微信公眾號開發、網站優化、網站認證、鹿邑ssl等。為1000多家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的鹿邑網站制作公司

其實只不過是布局+動態生產TextView罷了,一開始選的是 FrameLayout,后來發現在處理單擊事件的時候一個問題  ,例如:

FrameLayout frameLayout= (FrameLayout) findViewById(R.id.frameLayout);     for(...){         frameLayout.add(tv1);        frameLayout.add(tv2);        //在這里直接處理單擊事件肯定是不行的,tv1和tv2是重合在一起的     }                 FrameLayout frameLayout= (FrameLayout) findViewById(R.id.frameLayout);     for(...){         tv1.setLayoutparams(....);        frameLayout.add(tv1);        frameLayout.add(tv2);       //在這里直接處理單擊事件就可以了,不知道為什么?     }

所以,直接改 成Linearlayout了,改成Linearlayout后,那些TextView的位置也好設置多了,下面是代碼:

package com.lliq.ui;    import android.app.Activity;       import android.os.Bundle;       import android.util.Log;       import android.view.View;       import android.view.View.OnClickListener;      import android.view.Window;       import android.widget.FrameLayout;       import android.widget.LinearLayout;       import android.widget.TextView;             import com.lliq.R;             public class HistoryActivity extends Activity      {          private final int space_year = 5;           private final int space_month = 5;          private String[] year = { "2010", "2011", "2012", "2013" };          private String[][] month = { { "01", "03", "04", "11" }, { "07" }, { "01", "03", "04", "11" },                  { "07" } };                  boolean menu_falg = false;// 單擊改變菜單圖標                  private TextView[] tv_year;          private TextView[] tv_month;           private TextView content;                   @Override          protected void onCreate(Bundle savedInstanceState)           {              super.onCreate(savedInstanceState);              requestWindowFeature(Window.FEATURE_NO_TITLE);               setContentView(R.layout.iq_history);              initLayout();          }                private void initLayout()          {               LinearLayout btnback = (LinearLayout) findViewById(R.id.history_layouthome);               final TextView btnhome = (TextView) findViewById(R.id.history_btnhome);              btnback.setOnClickListener(new OnClickListener()             {                 @Override                 public void onClick(View arg0)                  {                      menu_falg = !menu_falg;                     btnhome.setBackgroundResource(menu_falg ? R.drawable.menuspread : R.drawable.menu_n);                     MainActivity.handler.sendEmptyMessage(0);                  }              });                     content = (TextView) findViewById(R.id.content);              LinearLayout timelayout = (LinearLayout) findViewById(R.id.timelayout);              tv_year = new TextView[year.length];              for (int i = 0; i < year.length; i++)              {                  tv_year[i] = new TextView(this);                  tv_year[i].setPadding(                        10,                          i == 0 ? space_year : space_year                                  * (13 - Integer.parseInt(month[i - 1][month[i - 1].length - 1])), 0, 0);                   tv_year[i].getPaint().setFakeBoldText(true);                 tv_year[i].setTextSize(14);                  tv_year[i].setTag(year[i]);                   tv_year[i].setText(year[i] + "  --");                  tv_year[i].setOnClickListener(new TimeLineClickListener(tv_year[i]));                   timelayout.addView(tv_year[i]);                  tv_month = new TextView[year.length];                  for (int j = 0; j < month[i].length; j++)                  {                      tv_month[i] = new TextView(this);                      if (j == 0)                      {                          tv_month[i].setPadding(20, space_month * Integer.parseInt(month[i][j]), 0, 0);                       } else                     {                          tv_month[i].setPadding(20, space_month                                   * (Integer.parseInt(month[i][j]) - Integer.parseInt(month[i][j - 1])),                                  0, 0);                      }                       tv_month[i].setTextSize(12);                       tv_month[i].setText(month[i][j] + "月   --");                      tv_month[i].setTag(year[i] + "-" + month[i][j]);                       tv_month[i].setOnClickListener(new TimeLineClickListener(tv_month[i]));                     timelayout.addView(tv_month[i]);                  }              }                 }                 class TimeLineClickListener implements OnClickListener           {                     TimeLineClickListener(View v)               {             }                     @Override              public void onClick(View v)               {                   content.setText(v.getTag().toString());              }          }              }

讀到這里,這篇“Android中如何實現一個時間軸效果”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注創新互聯行業資訊頻道。

網站名稱:Android中如何實現一個時間軸效果-創新互聯
本文來源:http://m.kartarina.com/article14/dicide.html

成都網站建設公司_創新互聯,為您提供企業網站制作移動網站建設網站營銷微信小程序自適應網站網站收錄

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 无码人妻精品内射一二三AV| 无码国模国产在线观看免费| yy111111少妇影院里无码| 久久久91人妻无码精品蜜桃HD| 亚洲中文字幕不卡无码| 精品少妇无码AV无码专区| 日韩激情无码免费毛片| 亚洲精品无码MV在线观看| 国产在线拍揄自揄拍无码视频 | 一本色道久久HEZYO无码| 午夜福利无码不卡在线观看| 无码 免费 国产在线观看91| 无码免费一区二区三区免费播放| 精品久久久无码人妻字幂| 无码国产精品一区二区免费式影视 | 亚洲?v无码国产在丝袜线观看 | 日韩人妻系列无码专区| 久久久久久AV无码免费网站| 亚洲免费日韩无码系列| 亚洲AV无码一区二区一二区| 久久ZYZ资源站无码中文动漫| 亚洲Av永久无码精品三区在线| 亚洲精品无码久久久久AV麻豆| 无码一区二区波多野结衣播放搜索| 亚洲av无码专区国产乱码在线观看| 久久久久成人精品无码| 国产成年无码v片在线| 精品无码成人网站久久久久久 | 精品无码国产自产拍在线观看蜜| 亚洲AV无码国产剧情| 亚洲av永久中文无码精品综合 | 人妻少妇无码视频在线| 免费看国产成年无码AV片| 最新无码专区视频在线| 无码夫の前で人妻を侵犯| 91无码人妻精品一区二区三区L| 亚洲中文无码线在线观看| 精品无码日韩一区二区三区不卡| 人妻少妇精品无码专区二区| 亚洲人成网亚洲欧洲无码| 亚洲av无码成人精品国产|