天天看点

Android第六期 - ViewPage与菜单栏本地页面监听滑动效果

     首先是JiaoyuzixunActivity.java代码部分:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

344

345

346

347

348

349

350

351

352

353

354

355

356

357

358

359

360

361

362

363

364

365

366

367

368

369

370

371

372

373

374

375

376

377

378

379

380

381

382

383

384

385

386

387

388

389

390

391

392

393

394

395

396

397

398

399

400

401

402

403

404

405

<code>package</code> <code>com.gaoxiaotong.ctone.jiaoyuzixun;</code>

<code>import</code> <code>java.util.ArrayList;</code>

<code>import</code> <code>java.util.HashMap;</code>

<code>import</code> <code>java.util.Iterator;</code>

<code>import</code> <code>java.util.List;</code>

<code>import</code> <code>java.util.Map;</code>

<code>import</code> <code>org.json.JSONArray;</code>

<code>import</code> <code>org.json.JSONObject;</code>

<code>import</code> <code>com.gaoxiaotong.ctone.entity.Jiaoyuzixun_ViewPage_Adapter;</code>

<code>import</code> <code>com.gaoxiaotong.ctone.entity.jianzhizhaopinAdapter;</code>

<code>import</code> <code>com.gaoxiaotong.ctone.jianzhizhaopin.JianzhizhaopinActivity;</code>

<code>import</code> <code>com.gaoxiaotong.info.Webserinfo;</code>

<code>import</code> <code>com.gaoxiaotongctone.MainActivity;</code>

<code>import</code> <code>com.gaoxiaotongctone.R;</code>

<code>import</code> <code>android.app.Activity;</code>

<code>import</code> <code>android.app.ProgressDialog;</code>

<code>import</code> <code>android.content.Intent;</code>

<code>import</code> <code>android.os.AsyncTask;</code>

<code>import</code> <code>android.os.Bundle;</code>

<code>import</code> <code>android.os.Parcelable;</code>

<code>import</code> <code>android.support.v4.view.PagerAdapter;</code>

<code>import</code> <code>android.support.v4.view.ViewPager;</code>

<code>import</code> <code>android.support.v4.view.ViewPager.OnPageChangeListener;</code>

<code>import</code> <code>android.util.Log;</code>

<code>import</code> <code>android.view.KeyEvent;</code>

<code>import</code> <code>android.view.View;</code>

<code>import</code> <code>android.view.ViewGroup.LayoutParams;</code>

<code>import</code> <code>android.view.animation.AnimationSet;</code>

<code>import</code> <code>android.view.animation.TranslateAnimation;</code>

<code>import</code> <code>android.widget.AdapterViewFlipper;</code>

<code>import</code> <code>android.widget.HorizontalScrollView;</code>

<code>import</code> <code>android.widget.ImageView;</code>

<code>import</code> <code>android.widget.LinearLayout;</code>

<code>import</code> <code>android.widget.ListView;</code>

<code>import</code> <code>android.widget.ProgressBar;</code>

<code>import</code> <code>android.widget.RadioButton;</code>

<code>import</code> <code>android.widget.RadioGroup;</code>

<code>import</code> <code>android.widget.TextView;</code>

<code>import</code> <code>android.widget.RadioGroup.OnCheckedChangeListener;</code>

<code>/**</code>

<code> </code><code>* HorizontalScrollView和ViewPager联动效果 上面为HorizontalScrollView,下面为ViewPager</code>

<code> </code><code>**/</code>

<code>public</code> <code>class</code> <code>JiaoyuzixunActivity </code><code>extends</code> <code>Activity </code><code>implements</code>

<code>        </code><code>OnCheckedChangeListener {</code>

<code>    </code><code>private</code> <code>ProgressDialog dialog;</code>

<code>    </code><code>private</code> <code>ProgressBar progressBar;</code>

<code>    </code><code>private</code> <code>HashMap&lt;Integer, Integer&gt; hMap;</code>

<code>    </code><code>private</code> <code>int</code> <code>pageIndex;</code>

<code>    </code><code>private</code> <code>boolean</code> <code>load_pagesize;</code>

<code>    </code><code>private</code> <code>int</code> <code>thePage;</code>

<code>    </code><code>/**</code>

<code>     </code><code>* 设置布局显示属性</code>

<code>     </code><code>*/</code>

<code>    </code><code>private</code> <code>LayoutParams mLayoutParams = </code><code>new</code> <code>LinearLayout.LayoutParams(</code>

<code>            </code><code>LinearLayout.LayoutParams.WRAP_CONTENT,</code>

<code>            </code><code>LinearLayout.LayoutParams.WRAP_CONTENT);</code>

<code>     </code><code>* 设置布局显示目标最大化属性</code>

<code>    </code><code>private</code> <code>LayoutParams FFlayoutParams = </code><code>new</code> <code>LinearLayout.LayoutParams(</code>

<code>            </code><code>LinearLayout.LayoutParams.MATCH_PARENT,</code>

<code>            </code><code>LinearLayout.LayoutParams.MATCH_PARENT);</code>

<code>    </code><code>private</code> <code>LinearLayout loadingLayout;</code>

<code>    </code><code>private</code> <code>TextView texview_back;</code>

<code>    </code><code>private</code> <code>RadioGroup mRadioGroup;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton1;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton2;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton3;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton4;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton5;</code>

<code>    </code><code>private</code> <code>RadioButton mRadioButton6;</code>

<code>    </code><code>private</code> <code>ImageView mImageView;</code>

<code>    </code><code>private</code> <code>float</code> <code>mCurrentCheckedRadioLeft;</code><code>// 当前被选中的RadioButton距离左侧的距离</code>

<code>    </code><code>private</code> <code>HorizontalScrollView mHorizontalScrollView;</code><code>// 上面的水平滚动控件</code>

<code>    </code><code>private</code> <code>ViewPager mViewPager; </code><code>// 下方的可横向拖动的控件</code>

<code>    </code><code>private</code> <code>ArrayList&lt;View&gt; mViews;</code><code>// 用来存放下方滚动的layout(layout_1,layout_2,layout_3)</code>

<code>    </code><code>@Override</code>

<code>    </code><code>public</code> <code>void</code> <code>onCreate(Bundle savedInstanceState) {</code>

<code>        </code><code>super</code><code>.onCreate(savedInstanceState);</code>

<code>        </code><code>setContentView(R.layout.title_bar_education);</code>

<code>        </code><code>iniController();</code>

<code>        </code><code>iniListener();</code>

<code>        </code><code>iniVariable();</code>

<code>        </code><code>mRadioButton1.setChecked(</code><code>true</code><code>);</code>

<code>        </code><code>mViewPager.setCurrentItem(</code><code>1</code><code>);</code>

<code>        </code><code>mCurrentCheckedRadioLeft = getCurrentCheckedRadioLeft();</code>

<code>        </code><code>// 返回</code>

<code>        </code><code>texview_back.setOnClickListener(</code><code>new</code> <code>View.OnClickListener() {</code>

<code>            </code><code>@Override</code>

<code>            </code><code>public</code> <code>void</code> <code>onClick(View v) {</code>

<code>                </code><code>// TODO Auto-generated method stub</code>

<code>                </code><code>Intent intent = </code><code>new</code> <code>Intent(JiaoyuzixunActivity.</code><code>this</code><code>,</code>

<code>                        </code><code>MainActivity.</code><code>class</code><code>);</code>

<code>                </code><code>startActivity(intent);</code>

<code>                </code><code>JiaoyuzixunActivity.</code><code>this</code><code>.finish();</code>

<code>            </code><code>}</code>

<code>        </code><code>});</code>

<code>        </code><code>// 绑定考研,专升本等等部分</code>

<code>    </code><code>}</code>

<code>     </code><code>* AsyncTask异步加载部分操作</code>

<code>    </code><code>public</code> <code>class</code> <code>MyTaskJianzhi1 </code><code>extends</code>

<code>            </code><code>AsyncTask&lt;String, Void, List&lt;Map&lt;String, Object&gt;&gt;&gt; {</code>

<code>        </code><code>private</code> <code>ListView lvCont;</code>

<code>        </code><code>private</code> <code>jianzhizhaopinAdapter adapter;</code>

<code>        </code><code>private</code> <code>int</code> <code>index;</code>

<code>        </code> 

<code>        </code><code>// 判断适配器是否被置空部分</code>

<code>        </code><code>public</code> <code>MyTaskJianzhi1(ListView lvCont, jianzhizhaopinAdapter jzzpAdapter) {</code>

<code>            </code><code>super</code><code>();</code>

<code>            </code><code>this</code><code>.lvCont = lvCont;</code>

<code>            </code><code>if</code> <code>(jzzpAdapter == </code><code>null</code><code>) {</code>

<code>                </code><code>adapter = </code><code>new</code> <code>jianzhizhaopinAdapter(JiaoyuzixunActivity.</code><code>this</code><code>);</code>

<code>            </code><code>} </code><code>else</code> <code>{</code>

<code>                </code><code>adapter = jzzpAdapter;</code>

<code>        </code><code>}</code>

<code>        </code><code>// 下载提示框</code>

<code>        </code><code>@Override</code>

<code>        </code><code>protected</code> <code>void</code> <code>onPreExecute() {</code>

<code>            </code><code>// TODO Auto-generated method stub</code>

<code>            </code><code>super</code><code>.onPreExecute();</code>

<code>            </code><code>dialog = </code><code>new</code> <code>ProgressDialog(JiaoyuzixunActivity.</code><code>this</code><code>);</code>

<code>            </code><code>dialog.setTitle(</code><code>"提示"</code><code>);</code>

<code>            </code><code>dialog.setMessage(</code><code>"正在下载,请稍后...."</code><code>);</code>

<code>            </code><code>dialog.show();</code>

<code>        </code><code>// 操作结束部分</code>

<code>        </code><code>protected</code> <code>void</code> <code>onPostExecute(List&lt;Map&lt;String, Object&gt;&gt; result) {</code>

<code>            </code><code>super</code><code>.onPostExecute(result);</code>

<code>            </code><code>// 绑定考研,专升本部分</code>

<code>            </code> 

<code>            </code><code>String aa = </code><code>""</code><code>;</code>

<code>            </code><code>try</code> <code>{</code>

<code>                </code><code>if</code> <code>(thePage == </code><code>1</code><code>) {</code>

<code>                    </code><code>adapter.setData(result);</code>

<code>                    </code><code>lvCont.setAdapter(adapter);</code>

<code>                </code><code>}</code>

<code>                </code><code>if</code> <code>(result.size() == </code><code>0</code><code>) {</code>

<code>                    </code><code>loadingLayout.setVisibility(View.GONE);</code>

<code>                </code><code>adapter.notifyDataSetChanged();</code>

<code>            </code><code>} </code><code>catch</code> <code>(Exception e) {</code>

<code>                </code><code>// TODO: handle exception</code>

<code>                </code><code>e.getMessage();</code>

<code>                </code><code>e.printStackTrace();</code>

<code>            </code><code>dialog.dismiss();</code>

<code>        </code><code>// 获取数据操作部分</code>

<code>        </code><code>protected</code> <code>List&lt;Map&lt;String, Object&gt;&gt; doInBackground(String... params) {</code>

<code>            </code><code>List&lt;Map&lt;String, Object&gt;&gt; list = </code><code>new</code> <code>ArrayList&lt;Map&lt;String, Object&gt;&gt;();</code>

<code>            </code><code>// 链接网络,获取json,解析数据</code>

<code>                </code><code>Webserinfo wsWebserinfo = </code><code>new</code> <code>Webserinfo();</code>

<code>                </code><code>JSONArray data = </code><code>new</code> <code>JSONArray();</code>

<code>                </code><code>if</code> <code>(pageIndex == </code><code>0</code><code>) {</code>

<code>                    </code><code>data = wsWebserinfo.jobsByType(</code><code>""</code> <code>+ Webserinfo.pageSize,</code>

<code>                            </code><code>"2"</code><code>, </code><code>""</code> <code>+ thePage);</code>

<code>                </code><code>} </code><code>else</code> <code>if</code> <code>(pageIndex == </code><code>1</code><code>) {</code>

<code>                            </code><code>"1"</code><code>, </code><code>""</code> <code>+ thePage);</code>

<code>                </code><code>} </code><code>else</code> <code>if</code> <code>(pageIndex == </code><code>2</code><code>) {</code>

<code>                            </code><code>"3"</code><code>, </code><code>""</code> <code>+ thePage);</code>

<code>                </code><code>if</code> <code>(data.length() &lt; </code><code>10</code><code>) {</code>

<code>                    </code><code>load_pagesize = </code><code>false</code><code>;</code>

<code>                </code><code>for</code> <code>(</code><code>int</code> <code>i = </code><code>0</code><code>; i &lt; data.length(); i++) {</code>

<code>                    </code><code>JSONObject jsonObj = data.getJSONObject(i);</code>

<code>                    </code><code>HashMap&lt;String, Object&gt; map = </code><code>new</code> <code>HashMap&lt;String, Object&gt;();</code>

<code>                    </code><code>// 迭代输出json的key作为map的key</code>

<code>                    </code><code>Iterator&lt;String&gt; iterator = jsonObj.keys();</code>

<code>                    </code><code>while</code> <code>(iterator.hasNext()) {</code>

<code>                        </code><code>String key = iterator.next();</code>

<code>                        </code><code>Object value = jsonObj.get(key);</code>

<code>                        </code><code>map.put(key, value);</code>

<code>                    </code><code>}</code>

<code>                    </code><code>if</code> <code>(thePage &gt; </code><code>1</code><code>) {</code>

<code>                        </code><code>adapter.addItem(map);</code>

<code>                    </code><code>list.add(map);</code>

<code>            </code><code>return</code> <code>list;</code>

<code>    </code><code>private</code> <code>void</code> <code>iniVariable() {</code>

<code>        </code><code>// TODO Auto-generated method stub</code>

<code>        </code><code>mViews = </code><code>new</code> <code>ArrayList&lt;View&gt;();</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_0, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_1, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_2, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_3, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_4, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_5, </code><code>null</code><code>));</code>

<code>        </code><code>mViews.add(getLayoutInflater().inflate(R.layout.layout_6, </code><code>null</code><code>));</code>

<code>        </code><code>mViewPager.setAdapter(</code><code>new</code> <code>Jiaoyuzixun_ViewPage_Adapter(mViews));</code><code>// 设置ViewPager的适配器</code>

<code>     </code><code>* RadioGroup点击CheckedChanged监听</code>

<code>    </code><code>public</code> <code>void</code> <code>onCheckedChanged(RadioGroup group, </code><code>int</code> <code>checkedId) {</code>

<code>        </code><code>AnimationSet _AnimationSet = </code><code>new</code> <code>AnimationSet(</code><code>true</code><code>);</code>

<code>        </code><code>TranslateAnimation _TranslateAnimation;</code>

<code>        </code><code>Log.i(</code><code>"zj"</code><code>, </code><code>"checkedid="</code> <code>+ checkedId);</code>

<code>        </code><code>if</code> <code>(checkedId == R.id.btn1) {</code>

<code>            </code><code>_TranslateAnimation = </code><code>new</code> <code>TranslateAnimation(</code>

<code>                    </code><code>mCurrentCheckedRadioLeft, getResources().getDimension(</code>

<code>                            </code><code>R.dimen.rdo1), 0f, 0f);</code>

<code>            </code><code>_AnimationSet.addAnimation(_TranslateAnimation);</code>

<code>            </code><code>_AnimationSet.setFillBefore(</code><code>false</code><code>);</code>

<code>            </code><code>_AnimationSet.setFillAfter(</code><code>true</code><code>);</code>

<code>            </code><code>_AnimationSet.setDuration(</code><code>100</code><code>);</code>

<code>            </code><code>mImageView.startAnimation(_AnimationSet);</code><code>// 开始上面蓝色横条图片的动画切换</code>

<code>            </code><code>// mImageView.setLayoutParams(_LayoutParams1);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>1</code><code>);</code><code>// 让下方ViewPager跟随上面的HorizontalScrollView切换</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(checkedId == R.id.btn2) {</code>

<code>                            </code><code>R.dimen.rdo2), 0f, 0f);</code>

<code>            </code><code>mImageView.startAnimation(_AnimationSet);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>2</code><code>);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(checkedId == R.id.btn3) {</code>

<code>                            </code><code>R.dimen.rdo3), 0f, 0f);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>3</code><code>);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(checkedId == R.id.btn4) {</code>

<code>                            </code><code>R.dimen.rdo4), 0f, 0f);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>4</code><code>);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(checkedId == R.id.btn5) {</code>

<code>                            </code><code>R.dimen.rdo5), 0f, 0f);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>5</code><code>);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(checkedId == R.id.btn6) {</code>

<code>                            </code><code>R.dimen.rdo6), 0f, 0f);</code>

<code>            </code><code>mViewPager.setCurrentItem(</code><code>6</code><code>);</code>

<code>        </code><code>mCurrentCheckedRadioLeft = getCurrentCheckedRadioLeft();</code><code>// 更新当前蓝色横条距离左边的距离</code>

<code>        </code><code>mHorizontalScrollView.smoothScrollTo((</code><code>int</code><code>) mCurrentCheckedRadioLeft</code>

<code>                </code><code>- (</code><code>int</code><code>) getResources().getDimension(R.dimen.rdo2), </code><code>0</code><code>);</code>

<code>     </code><code>* 获得当前被选中的RadioButton距离左侧的距离</code>

<code>    </code><code>private</code> <code>float</code> <code>getCurrentCheckedRadioLeft() {</code>

<code>        </code><code>if</code> <code>(mRadioButton1.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo1);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(mRadioButton2.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo2);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(mRadioButton3.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo3);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(mRadioButton4.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo4);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(mRadioButton5.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo5);</code>

<code>        </code><code>} </code><code>else</code> <code>if</code> <code>(mRadioButton6.isChecked()) {</code>

<code>            </code><code>return</code> <code>getResources().getDimension(R.dimen.rdo6);</code>

<code>        </code><code>return</code> <code>0f;</code>

<code>     </code><code>* 监听部分操作</code>

<code>    </code><code>private</code> <code>void</code> <code>iniListener() {</code>

<code>        </code><code>mRadioGroup.setOnCheckedChangeListener(</code><code>this</code><code>);</code>

<code>        </code><code>mViewPager.setOnPageChangeListener(</code><code>new</code> <code>MyPagerOnPageChangeListener());</code>

<code>    </code><code>private</code> <code>void</code> <code>iniController() {</code>

<code>        </code><code>mRadioGroup = (RadioGroup) findViewById(R.id.radioGroup);</code>

<code>        </code><code>mRadioButton1 = (RadioButton) findViewById(R.id.btn1);</code>

<code>        </code><code>mRadioButton2 = (RadioButton) findViewById(R.id.btn2);</code>

<code>        </code><code>mRadioButton3 = (RadioButton) findViewById(R.id.btn3);</code>

<code>        </code><code>mRadioButton4 = (RadioButton) findViewById(R.id.btn4);</code>

<code>        </code><code>mRadioButton5 = (RadioButton) findViewById(R.id.btn5);</code>

<code>        </code><code>mRadioButton6 = (RadioButton) findViewById(R.id.btn6);</code>

<code>        </code><code>mImageView = (ImageView) findViewById(R.id.img1);</code>

<code>        </code><code>texview_back = (TextView) findViewById(R.id.back_activity_button);</code>

<code>        </code><code>mHorizontalScrollView = (HorizontalScrollView) findViewById(R.id.horizontalScrollView);</code>

<code>        </code><code>mViewPager = (ViewPager) findViewById(R.id.pager);</code>

<code>     </code><code>* ViewPager的PageChangeListener(页面改变的监听器)</code>

<code>    </code><code>private</code> <code>class</code> <code>MyPagerOnPageChangeListener </code><code>implements</code> <code>OnPageChangeListener {</code>

<code>        </code><code>public</code> <code>void</code> <code>onPageScrollStateChanged(</code><code>int</code> <code>arg0) {</code>

<code>        </code><code>public</code> <code>void</code> <code>onPageScrolled(</code><code>int</code> <code>arg0, </code><code>float</code> <code>arg1, </code><code>int</code> <code>arg2) {</code>

<code>        </code><code>/**</code>

<code>         </code><code>* 滑动ViewPager的时候,让上方的HorizontalScrollView自动切换</code>

<code>         </code><code>*/</code>

<code>        </code><code>public</code> <code>void</code> <code>onPageSelected(</code><code>int</code> <code>position) {</code>

<code>            </code><code>if</code> <code>(position == </code><code>0</code><code>) {</code>

<code>                </code><code>mViewPager.setCurrentItem(</code><code>1</code><code>);</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>1</code><code>) {</code>

<code>                </code><code>mRadioButton1.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>2</code><code>) {</code>

<code>                </code><code>mRadioButton2.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>3</code><code>) {</code>

<code>                </code><code>mRadioButton3.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>4</code><code>) {</code>

<code>                </code><code>mRadioButton4.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>5</code><code>) {</code>

<code>                </code><code>mRadioButton5.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>6</code><code>) {</code>

<code>                </code><code>mRadioButton6.performClick();</code>

<code>            </code><code>} </code><code>else</code> <code>if</code> <code>(position == </code><code>7</code><code>) {</code>

<code>                </code><code>mViewPager.setCurrentItem(</code><code>6</code><code>);</code>

<code>    </code><code>// back键</code>

<code>    </code><code>public</code> <code>boolean</code> <code>onKeyDown(</code><code>int</code> <code>keyCode, KeyEvent event) {</code>

<code>        </code><code>if</code> <code>(keyCode == KeyEvent.KEYCODE_BACK &amp;&amp; event.getRepeatCount() == </code><code>0</code><code>) {</code>

<code>            </code><code>Intent intent = </code><code>new</code> <code>Intent();</code>

<code>            </code><code>intent.setClass(JiaoyuzixunActivity.</code><code>this</code><code>, MainActivity.</code><code>class</code><code>);</code>

<code>            </code><code>JiaoyuzixunActivity.</code><code>this</code><code>.startActivity(intent);</code>

<code>            </code><code>JiaoyuzixunActivity.</code><code>this</code><code>.finish();</code>

<code>        </code><code>} </code><code>else</code> <code>{</code>

<code>            </code><code>return</code> <code>false</code><code>;</code>

<code>        </code><code>return</code> <code>super</code><code>.onKeyDown(keyCode, event);</code>

<code>}</code>

    dimens.xml部分,控制菜单栏显示条目效果:

<code>&lt;</code><code>resources</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"padding_small"</code><code>&gt;8dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"padding_medium"</code><code>&gt;8dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"padding_large"</code><code>&gt;16dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo1"</code><code>&gt;0dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo2"</code><code>&gt;100dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo3"</code><code>&gt;200dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo4"</code><code>&gt;300dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo5"</code><code>&gt;400dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>    </code><code>&lt;</code><code>dimen</code> <code>name</code><code>=</code><code>"rdo6"</code><code>&gt;500dp&lt;/</code><code>dimen</code><code>&gt;</code>

<code>&lt;/</code><code>resources</code><code>&gt;</code>

    过度页面layout_0.xml部分:

<code>&lt;?</code><code>xml</code> <code>version</code><code>=</code><code>"1.0"</code> <code>encoding</code><code>=</code><code>"utf-8"</code><code>?&gt;</code>

<code>&lt;</code><code>LinearLayout</code>

<code>  </code><code>xmlns:android</code><code>=</code><code>"http://schemas.android.com/apk/res/android"</code>

<code>  </code><code>android:orientation</code><code>=</code><code>"vertical"</code>

<code>  </code><code>android:layout_width</code><code>=</code><code>"match_parent"</code>

<code>  </code><code>android:layout_height</code><code>=</code><code>"match_parent"</code>

<code>  </code><code>android:background</code><code>=</code><code>"@android:color/darker_gray"</code><code>&gt;</code>

<code>&lt;/</code><code>LinearLayout</code><code>&gt;</code>

    显示页面其中一个样式layout_1.xml部分:

<code>&lt;</code><code>LinearLayout</code> <code>xmlns:android</code><code>=</code><code>"http://schemas.android.com/apk/res/android"</code>

<code>    </code><code>android:layout_width</code><code>=</code><code>"match_parent"</code>

<code>    </code><code>android:layout_height</code><code>=</code><code>"match_parent"</code>

<code>    </code><code>android:background</code><code>=</code><code>"@android:color/darker_gray"</code>

<code>    </code><code>android:orientation</code><code>=</code><code>"vertical"</code> <code>&gt;</code>

<code>    </code><code>&lt;</code><code>TextView</code>

<code>        </code><code>android:id</code><code>=</code><code>"@+id/textView_showMessages"</code>

<code>        </code><code>android:layout_width</code><code>=</code><code>"fill_parent"</code>

<code>        </code><code>android:layout_height</code><code>=</code><code>"fill_parent"</code>

<code>        </code><code>android:gravity</code><code>=</code><code>"center"</code>

<code>        </code><code>android:text</code><code>=</code><code>"A"</code>

<code>        </code><code>android:textColor</code><code>=</code><code>"#33b5e5"</code>

<code>        </code><code>android:textSize</code><code>=</code><code>"240sp"</code> <code>/&gt;</code>

    效果图:

<a href="http://s3.51cto.com/wyfs02/M01/37/D3/wKiom1OxAlmyIyRxAADFtiFtP7E551.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/37/D2/wKioL1OxAiuCtT_gAAC3S7nITN4810.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M00/37/D3/wKiom1OxAlqzYTXqAADau00ARWw949.jpg" target="_blank"></a>

本文转自 吴雨声 51CTO博客,原文链接:http://blog.51cto.com/liangxiao/1432413,如需转载请自行联系原作者

继续阅读