package org.kymjs.music.ui; import org.kymjs.kjframe.KJActivity; import org.kymjs.kjframe.ui.BindView; import org.kymjs.kjframe.widget.KJViewPager; import org.kymjs.kjframe.widget.KJViewPager.OnViewChangeListener; import org.kymjs.music.Config; import org.kymjs.music.R; import org.kymjs.music.service.ScanMusic; import org.kymjs.music.utils.PreferenceHelper; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; /** * 首次安装时进入的欢迎界面 * * @author kymjs * */ public class FirstInstallActivity extends KJActivity implements OnViewChangeListener { private LinearLayout pointLayout; private KJViewPager scrollLayout; private Button mBtnStart; private int count; private ImageView[] imgs; private int currentItem; private String scanToast; @BindView(id = R.id.scan_music_title) private TextView scanMusicName; @Override public void setRootView() { setContentView(R.layout.aty_welcome_first); } @Override public void initWidget() { pointLayout = (LinearLayout) findViewById(R.id.pointLayout); scrollLayout = (KJViewPager) findViewById(R.id.scrollLayout); mBtnStart = (Button) findViewById(R.id.startBtn); count = scrollLayout.getChildCount(); imgs = new ImageView[count]; for (int i = 0; i < count; i++) { imgs[i] = (ImageView) pointLayout.getChildAt(i); imgs[i].setEnabled(true); imgs[i].setTag(i); } currentItem = 0; imgs[currentItem].setEnabled(false); scrollLayout.setOnViewChangeListener(this); mBtnStart.setOnClickListener(this); loadRes(); writeLog(); } BroadcastReceiver scanReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { if (Config.RECEIVER_UPDATE_MUSIC_LIST.equals(intent.getAction())) { scanToast = "扫描到 " + intent.getIntExtra(Config.SCAN_MUSIC_COUNT, 0) + " 首歌曲"; } else if (Config.RECEIVER_MUSIC_SCAN_FAIL.equals(intent .getAction())) { scanToast = "呀,扫描失败了,再试一试?"; } } }; @Override protected void onCreate(android.os.Bundle savedInstanceState) { super.onCreate(savedInstanceState); IntentFilter filter = new IntentFilter(); filter.addAction(Config.RECEIVER_UPDATE_MUSIC_LIST); filter.addAction(Config.RECEIVER_MUSIC_SCAN_FAIL); registerReceiver(scanReceiver, filter); }; @Override protected void onDestroy() { super.onDestroy(); unregisterReceiver(scanReceiver); } @Override public void widgetClick(View v) { startActivity(new Intent(this, Main.class)); } /** * 扫描本地歌曲 */ private void loadRes() { Intent it = new Intent(); it.setClass(this, ScanMusic.class); startService(it); } /** * 写入本地记录 */ private void writeLog() { PreferenceHelper.write(this, Config.FIRSTINSTALL_FILE, Config.FIRSTINSTALL_KEY, false); } // 设置当前点 @Override public void OnViewChange(int postion) { if (postion < 0 || postion > count - 1 || currentItem == postion) { return; } imgs[currentItem].setEnabled(true); imgs[postion].setEnabled(false); currentItem = postion; if (postion == count - 2) { scanMusicName.setText(scanToast); } } }