Android Open Source - SimpleReader Guide Activity






From Project

Back to project page SimpleReader.

License

The source code is released under:

Apache License

If you think the Android project SimpleReader listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.dreamteam.app.ui;
/*from w  w  w. ja  va 2s  .co  m*/
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;

import com.dreamteam.app.adapter.GuideViewPagerAdapter;
import com.dreamteam.app.commons.AppConfig;
import com.dreamteam.app.commons.AppContext;
import com.dreamteam.app.db.FeedDBManager;
import com.dreateam.app.ui.R;

/**
 * 
 * @{# GuideActivity.java Create on 2013-5-2 ????10:59:08
 * 
 *     class desc: ?????????????????
 * 
 *     <p>
 *     Copyright: Copyright(c) 2013
 *     </p>
 * @Version 1.0
 * @Author <a href="mailto:gaolei_xj@163.com">Leo</a>
 * 
 * 
 */
public class GuideActivity extends Activity implements OnPageChangeListener
{
  private ViewPager vp;
  private GuideViewPagerAdapter vpAdapter;
  private List<View> views;

  // ???????
  private ImageView[] dots;

  // ??????????
  private int currentIndex;

  @Override
  protected void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.guide);

    // ????????
    initViews();

    // ?????????
    initDots();
    writeDB();
    //???????????
    writeSaveDaysFile();
    //??????????
    AppContext.clearSdCache();
  }

  private void writeSaveDaysFile()
  {
    String fileName = getFilesDir().getAbsolutePath() + File.separator 
        + AppConfig.PREF_DEPRECATED;
    File file = new File(fileName);
    try
    {
      file.createNewFile();
    } catch (IOException e)
    {
      e.printStackTrace();
    }
  }

  private void writeDB()
  {
    InputStream inputStream = null;
    try
    {
      inputStream = getAssets().open("feed.db");
      FeedDBManager helper = new FeedDBManager(this, FeedDBManager.DB_NAME, null, 1);
      SQLiteDatabase db = helper.getWritableDatabase();
      File dbFile = new File(db.getPath());
      if(dbFile.exists())
      {
        dbFile.delete();
      }
      FileOutputStream fos = null;
      
      try
      {
        fos = new FileOutputStream(dbFile);
        byte buffer[] = new byte[1024 * 4];
        while((inputStream.read(buffer)) != -1)
        {
          fos.write(buffer);
        }
      }
      catch(FileNotFoundException e)
      {
        e.printStackTrace();
      }
      catch(IOException e)
      {
        e.printStackTrace();
      }
      finally
      {
        try
        {
          if(inputStream != null)
          {
            inputStream.close();
            inputStream = null;
          }
          if(fos != null)
          {
            fos.close();
            fos = null;
          }
        } catch (IOException e)
        {
          e.printStackTrace();
        }
        db.close();
      }
    }
    catch(IOException e)
    {
      e.printStackTrace();
    }
  }

  private void initViews()
  {
    LayoutInflater inflater = LayoutInflater.from(this);

    views = new ArrayList<View>();
    // ??????????
    views.add(inflater.inflate(R.layout.what_new_one, null));
    views.add(inflater.inflate(R.layout.what_new_two, null));
    views.add(inflater.inflate(R.layout.what_new_three, null));
    views.add(inflater.inflate(R.layout.what_new_four, null));

    // ????Adapter
    vpAdapter = new GuideViewPagerAdapter(views, this);

    vp = (ViewPager) findViewById(R.id.viewpager);
    vp.setAdapter(vpAdapter);
    // ????
    vp.setOnPageChangeListener(this);
  }

  private void initDots()
  {
    LinearLayout ll = (LinearLayout) findViewById(R.id.ll);

    dots = new ImageView[views.size()];

    // ???????????
    for (int i = 0; i < views.size(); i++)
    {
      dots[i] = (ImageView) ll.getChildAt(i);
      dots[i].setEnabled(true);// ???????
    }

    currentIndex = 0;
    dots[currentIndex].setEnabled(false);// ??????????????
  }

  private void setCurrentDot(int position)
  {
    if (position < 0 || position > views.size() - 1
        || currentIndex == position)
    {
      return;
    }

    dots[position].setEnabled(false);
    dots[currentIndex].setEnabled(true);

    currentIndex = position;
  }

  // ?????????????
  @Override
  public void onPageScrollStateChanged(int arg0)
  {
  }

  // ??????????????
  @Override
  public void onPageScrolled(int arg0, float arg1, int arg2)
  {
  }

  // ?????????????
  @Override
  public void onPageSelected(int arg0)
  {
    // ????????????
    setCurrentDot(arg0);
  }

}




Java Source Code List

com.dreamteam.app.adapter.CategoryDetailAdapter.java
com.dreamteam.app.adapter.FeedCategoryAdapter.java
com.dreamteam.app.adapter.GridAdapter.java
com.dreamteam.app.adapter.GuideViewPagerAdapter.java
com.dreamteam.app.adapter.ItemListAdapter.java
com.dreamteam.app.adapter.MPagerAdapter.java
com.dreamteam.app.commons.AppConfig.java
com.dreamteam.app.commons.AppContext.java
com.dreamteam.app.commons.HtmlFilter.java
com.dreamteam.app.commons.IFlyHelper.java
com.dreamteam.app.commons.ItemListEntityParser.java
com.dreamteam.app.commons.SectionHelper.java
com.dreamteam.app.commons.SeriaHelper.java
com.dreamteam.app.commons.SkinManager.java
com.dreamteam.app.commons.UIHelper.java
com.dreamteam.app.config.Contants.java
com.dreamteam.app.db.DbManager.java
com.dreamteam.app.db.FavoItemDbHelper.java
com.dreamteam.app.db.FeedDBManager.java
com.dreamteam.app.db.provider.RSSFeedCategoryProvider.java
com.dreamteam.app.entity.FeedItem.java
com.dreamteam.app.entity.Feed.java
com.dreamteam.app.entity.ItemListEntity.java
com.dreamteam.app.entity.RSSFeedCategroy.java
com.dreamteam.app.entity.Section.java
com.dreamteam.app.img.FileCacheManager.java
com.dreamteam.app.img.FileCache.java
com.dreamteam.app.img.ICache.java
com.dreamteam.app.img.ImageLoadTask.java
com.dreamteam.app.img.ImageLoad.java
com.dreamteam.app.img.ImageLoader.java
com.dreamteam.app.img.MemoryCache.java
com.dreamteam.app.rss.Dates.java
com.dreamteam.app.rss.Integers.java
com.dreamteam.app.rss.MediaAttributes.java
com.dreamteam.app.rss.MediaEnclosure.java
com.dreamteam.app.rss.MediaThumbnail.java
com.dreamteam.app.rss.RSSBase.java
com.dreamteam.app.rss.RSSConfig.java
com.dreamteam.app.rss.RSSException.java
com.dreamteam.app.rss.RSSFault.java
com.dreamteam.app.rss.RSSFeed.java
com.dreamteam.app.rss.RSSHandler.java
com.dreamteam.app.rss.RSSItem.java
com.dreamteam.app.rss.RSSLoader.java
com.dreamteam.app.rss.RSSParserSPI.java
com.dreamteam.app.rss.RSSParser.java
com.dreamteam.app.rss.RSSReaderException.java
com.dreamteam.app.rss.RSSReader.java
com.dreamteam.app.rss.Resources.java
com.dreamteam.app.ui.About.java
com.dreamteam.app.ui.BaseActivity.java
com.dreamteam.app.ui.BaseTitledActivity.java
com.dreamteam.app.ui.CategoryDetailActivity.java
com.dreamteam.app.ui.ColorListActivity.java
com.dreamteam.app.ui.FavoriteItemList.java
com.dreamteam.app.ui.FeedCategoryActivity.java
com.dreamteam.app.ui.FeedbackUI.java
com.dreamteam.app.ui.GuideActivity.java
com.dreamteam.app.ui.ImageDialog.java
com.dreamteam.app.ui.ImagesBrowseActivity.java
com.dreamteam.app.ui.ItemDetailActivity.java
com.dreamteam.app.ui.ItemListActivity.java
com.dreamteam.app.ui.LocalImageBrowseActivity.java
com.dreamteam.app.ui.LoginDialog.java
com.dreamteam.app.ui.MainActivity.java
com.dreamteam.app.ui.Setting.java
com.dreamteam.app.ui.SplashActivity.java
com.dreamteam.app.ui.SwitchBgActivity.java
com.dreamteam.app.ui.WidgetProvider.java
com.dreamteam.app.ui.adapter.ColorListAdapter.java
com.dreamteam.app.utils.CategoryNameExchange.java
com.dreamteam.app.utils.DateUtils.java
com.dreamteam.app.utils.FileUtils.java
com.dreamteam.app.utils.HttpUtils.java
com.dreamteam.app.utils.ImageLoader.java
com.dreamteam.app.utils.ImageUtils.java
com.dreamteam.app.utils.Logger.java
com.dreamteam.app.utils.MD5.java
com.dreamteam.app.utils.StringUtils.java
com.dreamteam.app.wallpaper.ChildAdapter.java
com.dreamteam.app.wallpaper.GroupGridAdapter.java
com.dreamteam.app.wallpaper.ImageBean.java
com.dreamteam.app.wallpaper.MyImageView.java
com.dreamteam.app.wallpaper.NativeImageLoader.java
com.dreamteam.app.wallpaper.WallPaperManager.java
com.dreamteam.custom.ui.PathAnimations.java
com.dreamteam.custom.ui.PullToRefreshListView.java