Advertisement
javajavajava

Untitled

Dec 18th, 2013
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. 12-18 11:58:43.884: E/AndroidRuntime(3724): FATAL EXCEPTION: main
  3. 12-18 11:58:43.884: E/AndroidRuntime(3724): java.lang.NullPointerException
  4. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.idg.omv.ui.phone.Home$2.onPageSelected(Home.java:114)
  5. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:567)
  6. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:551)
  7. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.support.v4.view.ViewPager.onTouchEvent(ViewPager.java:2015)
  8. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.View.dispatchTouchEvent(View.java:7255)
  9. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2235)
  10. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1932)
  11. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  12. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  13. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  14. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  15. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  16. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  17. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  18. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  19. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  20. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  21. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  22. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  23. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2241)
  24. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1946)
  25. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1968)
  26. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1420)
  27. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.app.Activity.dispatchTouchEvent(Activity.java:2441)
  28. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1916)
  29. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.View.dispatchPointerEvent(View.java:7435)
  30. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3610)
  31. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3538)
  32. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4790)
  33. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4750)
  34. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4902)
  35. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:179)
  36. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.os.MessageQueue.nativePollOnce(Native Method)
  37. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.os.MessageQueue.next(MessageQueue.java:125)
  38. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.os.Looper.loop(Looper.java:140)
  39. 12-18 11:58:43.884: E/AndroidRuntime(3724): at android.app.ActivityThread.main(ActivityThread.java:5297)
  40. 12-18 11:58:43.884: E/AndroidRuntime(3724): at java.lang.reflect.Method.invokeNative(Native Method)
  41. 12-18 11:58:43.884: E/AndroidRuntime(3724): at java.lang.reflect.Method.invoke(Method.java:511)
  42. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
  43. 12-18 11:58:43.884: E/AndroidRuntime(3724): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
  44. 12-18 11:58:43.884: E/AndroidRuntime(3724): at dalvik.system.NativeStart.main(Native Method)
  45.  
  46.  
  47.  
  48. import android.app.ActionBar;
  49. import android.app.Activity;
  50. import android.content.Context;
  51. import android.content.Intent;
  52. import android.content.res.Configuration;
  53. import android.os.Bundle;
  54. import android.os.Handler;
  55. import android.os.Message;
  56. import android.support.v4.app.ActionBarDrawerToggle;
  57. import android.support.v4.view.GravityCompat;
  58. import android.support.v4.view.PagerAdapter;
  59. import android.support.v4.view.ViewPager;
  60. import android.support.v4.view.ViewPager.OnPageChangeListener;
  61. import android.support.v4.widget.DrawerLayout;
  62. import android.util.Log;
  63. import android.view.Menu;
  64. import android.view.MenuInflater;
  65. import android.view.MenuItem;
  66. import android.view.View;
  67. import android.view.ViewGroup;
  68. import android.widget.AdapterView;
  69. import android.widget.ArrayAdapter;
  70. import android.widget.Button;
  71. import android.widget.ImageView;
  72. import android.widget.ImageView.ScaleType;
  73. import android.widget.ListView;
  74. import android.widget.ScrollView;
  75.  
  76. import com.idg.omv.R;
  77. import com.google.android.youtube.player.YouTubeBaseActivity;
  78. import com.idg.omv.domain.Library;
  79. import com.idg.omv.domain.Video;
  80. import com.idg.omv.service.task.GetYouTubeUserVideosTask;
  81. import com.idg.omv.ui.VideoClickListener;
  82. import com.idg.omv.ui.widget.VideosListView;
  83.  
  84. /**
  85. * The Activity can retrieve Videos for a specific username from YouTube</br> It
  86. * then displays them into a list including the Thumbnail preview and the
  87. * title</br> There is a reference to each video on YouTube as well but this
  88. * isn't used in this tutorial</br> </br> <b>Note<b/> orientation change isn't
  89. * covered in this tutorial, you will want to override onSaveInstanceState() and
  90. * onRestoreInstanceState() when you come to this </br>
  91. *
  92. */
  93. public class Home extends YouTubeBaseActivity implements
  94.  
  95. VideoClickListener {
  96.  
  97. private VideosListView listView;
  98. private ActionBarDrawerToggle actionBarDrawerToggle;
  99. public static final String API_KEY = "AIzaSyC0Te2pyooXzuyLaE6_SsFlITKCwjj55fI";
  100. public static final String VIDEO_ID = "o7VVHhK9zf0";
  101. private int mCurrentTabPosition = NO_CURRENT_POSITION;
  102. private static final int NO_CURRENT_POSITION = -1;
  103. private DrawerLayout drawerLayout;
  104. private ListView drawerListView;
  105. private String[] drawerListViewItems;
  106.  
  107. ScrollView mainScrollView;
  108. Button fav_up_btn1;
  109. Button fav_dwn_btn1;
  110. String TAG = "DEBUG THIS";
  111. String playlist = "eminemvevo";
  112. Activity activity;
  113. int imageArray[];
  114. String[] stringArray;
  115. String runPrevious = "No";
  116. private OnPageChangeListener mPageChangeListener;
  117. ImagePagerAdapter adapter = new ImagePagerAdapter();
  118.  
  119. @Override
  120. public void onCreate(Bundle savedInstanceState) {
  121. super.onCreate(savedInstanceState);
  122. setContentView(R.layout.home);
  123. final ActionBar actionBar = getActionBar();
  124. final ViewPager mPager = (ViewPager) findViewById(R.id.view_pager);
  125. adapter.notifyDataSetChanged();
  126. mPager.setAdapter(adapter);
  127. actionBar.setCustomView(R.layout.actionbar_custom_view_home);
  128. actionBar.setDisplayShowTitleEnabled(false);
  129. actionBar.setDisplayShowCustomEnabled(true);
  130. drawerListViewItems = getResources().getStringArray(R.array.items);
  131. drawerListView = (ListView) findViewById(R.id.left_drawer);
  132. drawerListView.setAdapter(new ArrayAdapter<String>(this,
  133. R.layout.drawer_listview_item, drawerListViewItems));
  134. mPager.setOnPageChangeListener(mPageChangeListener);
  135. drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
  136. actionBarDrawerToggle = new ActionBarDrawerToggle(this,
  137. drawerLayout,
  138. R.drawable.ic_drawer,
  139. R.string.drawer_open,
  140. R.string.drawer_close
  141. );
  142. drawerLayout.setDrawerListener(actionBarDrawerToggle);
  143.  
  144. getActionBar().setDisplayHomeAsUpEnabled(true);
  145. _initMenu();
  146. drawerLayout.setDrawerShadow(R.drawable.drawer_shadow,
  147. GravityCompat.START);
  148.  
  149. listView = (VideosListView) findViewById(R.id.videosListView);
  150. listView.setOnVideoClickListener(this);
  151.  
  152. new GetYouTubeUserVideosTask(responseHandler, playlist).execute();
  153.  
  154. mPager.setOnPageChangeListener(new OnPageChangeListener() {
  155.  
  156. @Override
  157. public void onPageSelected(int pos) {
  158.  
  159. String playlist1 = stringArray[pos];
  160. new GetYouTubeUserVideosTask(responseHandler, playlist1)
  161. .execute();
  162.  
  163. }
  164.  
  165. @Override
  166. public void onPageScrolled(int arg0, float arg1, int arg2) {
  167.  
  168. }
  169.  
  170. @Override
  171. public void onPageScrollStateChanged(int pos) {
  172.  
  173. }
  174. });
  175.  
  176. mPageChangeListener = new ViewPager.SimpleOnPageChangeListener() {
  177.  
  178. @Override
  179. public void onPageSelected(int position) {
  180. onTabChanged(mPager.getAdapter(), mCurrentTabPosition, position);
  181. position = mCurrentTabPosition;
  182. int oldPos = mPager.getCurrentItem();
  183.  
  184. Log.d("PK", "Page selected");
  185.  
  186. if (position > oldPos) {
  187.  
  188. System.out.print(position);
  189. // Moving to the right
  190. String playlist = "TheMozARTGROUP‎";
  191. new GetYouTubeUserVideosTask(responseHandler, playlist)
  192. .execute();
  193.  
  194. } else if (position < oldPos) {
  195. // Moving to the Left
  196. System.out.print(position);
  197. String playlist = "TheMozARTGROUP‎";
  198. new GetYouTubeUserVideosTask(responseHandler, playlist)
  199. .execute();
  200.  
  201. }
  202. // mPager.setOnPageChangeListener(mPageChangeListener);
  203. }
  204.  
  205. private void onTabChanged(PagerAdapter adapter,
  206. int mCurrentTabPosition, int position) {
  207.  
  208. Log.d("PK", "Tab changed");
  209. // TODO Auto-generated method stub
  210.  
  211. }
  212. };
  213. }
  214.  
  215. private class MyActivityGetYouTubeUserVideosTask extends
  216. GetYouTubeUserVideosTask {
  217. public MyActivityGetYouTubeUserVideosTask(Handler replyTo,
  218. String username) {
  219. super(replyTo, username);
  220. // TODO Auto-generated constructor stub
  221. }
  222.  
  223. @Override
  224. protected void onPostExecute(Void result) {
  225. if (result != null) {
  226. // TODO update your list data
  227. adapter.notifyDataSetChanged();
  228. }
  229.  
  230. }
  231. }
  232.  
  233. private void _initMenu() {
  234.  
  235. // drawerListView.setOnItemClickListener(new DrawerItemClickListener());
  236.  
  237. }
  238.  
  239. Handler responseHandler = new Handler() {
  240. @Override
  241. public void handleMessage(Message msg) {
  242. populateListWithVideos(msg);
  243. };
  244. };
  245.  
  246. private void populateListWithVideos(Message msg) {
  247. Library lib = (Library) msg.getData().get(
  248. GetYouTubeUserVideosTask.LIBRARY);
  249. listView.setVideos(lib.getVideos());
  250.  
  251. }
  252.  
  253. @Override
  254. protected void onStop() {
  255. responseHandler = null;
  256. super.onStop();
  257. }
  258.  
  259. @Override
  260. public void onVideoClicked(Video video) {
  261. Intent intent = new Intent(this, Player.class);
  262. intent.putExtra("id", video.getId());
  263. intent.putExtra("title", video.getTitle());
  264. intent.putExtra("uploader", video.getUploader());
  265. intent.putExtra("viewCount", video.getviewCount());
  266. startActivity(intent);
  267. }
  268.  
  269. @Override
  270. public void onConfigurationChanged(Configuration newConfig) {
  271. super.onConfigurationChanged(newConfig);
  272. actionBarDrawerToggle.onConfigurationChanged(newConfig);
  273. }
  274.  
  275. @Override
  276. public boolean onCreateOptionsMenu(Menu menu) {
  277. MenuInflater inflater = getMenuInflater();
  278. inflater.inflate(R.menu.main, menu);
  279. return super.onCreateOptionsMenu(menu);
  280. }
  281.  
  282. @Override
  283. public boolean onOptionsItemSelected(MenuItem item) {
  284.  
  285. if (actionBarDrawerToggle.onOptionsItemSelected(item)) {
  286. return true;
  287. }
  288. return super.onOptionsItemSelected(item);
  289. }
  290.  
  291. private class ImagePagerAdapter extends PagerAdapter implements
  292. ViewPager.OnPageChangeListener {
  293. public ImagePagerAdapter(Activity act, int[] mImages,
  294. String[] stringArra) {
  295. imageArray = mImages;
  296. activity = act;
  297. setStringArray(stringArra);
  298. }
  299.  
  300. public ImagePagerAdapter() {
  301. super();
  302.  
  303. }
  304.  
  305. private int[] mImages = new int[] { R.drawable.selstation_up_btn,
  306. R.drawable.classical_up_btn, R.drawable.country_up_btn,
  307. R.drawable.dance_up_btn, R.drawable.hiphop_up_btn,
  308. R.drawable.island_up_btn, R.drawable.latin_up_btn,
  309. R.drawable.pop_up_btn, R.drawable.samba_up_btn };
  310.  
  311.  
  312. @Override
  313. public int getCount() {
  314. return mImages.length;
  315. }
  316.  
  317. @Override
  318. public boolean isViewFromObject(View view, Object object) {
  319. return view == ((ImageView) object);
  320. }
  321.  
  322. @Override
  323. public Object instantiateItem(ViewGroup container, int position) {
  324. Context context = Home.this;
  325. ImageView imageView = new ImageView(context);
  326. imageView.setScaleType(ScaleType.FIT_XY);
  327. imageView.setImageResource(mImages[position]);
  328. ((ViewPager) container).addView(imageView, 0);
  329. return imageView;
  330. }
  331.  
  332. public void destroyItem(ViewGroup container, int position, Object object) {
  333. ((ViewPager) container).removeView((ImageView) object);
  334. }
  335.  
  336. private class DrawerItemClickListener implements
  337. ListView.OnItemClickListener {
  338.  
  339. @Override
  340. public void onItemClick(AdapterView parent, View view,
  341. int position, long id) {
  342.  
  343. Log.d("pk", "onItemClick");
  344. // Highlight the selected item, update the title, and close the
  345. // drawer
  346. // update selected item and title, then close the drawer
  347. drawerListView.setItemChecked(position, true);
  348. setTitle("......");
  349.  
  350. String text = "menu click... should be implemented";
  351. // Toast.makeText(Home.this, text, Toast.LENGTH_LONG).show();
  352. drawerLayout.closeDrawer(drawerListView);
  353.  
  354. }
  355.  
  356. }
  357.  
  358. private String[] stringArray = new String[] { "vevo",
  359. "TheMozARTGROUP‎", "TimMcGrawVEVO‎", "TiestoVEVO‎",
  360. "EminemVEVO‎" };
  361.  
  362. @Override
  363. public void onPageScrollStateChanged(int arg0) {
  364. // TODO Auto-generated method stub
  365. Log.d("pk", "onPageScrollStateChanged");
  366. }
  367.  
  368. @Override
  369. public void onPageScrolled(int arg0, float arg1, int arg2) {
  370. // TODO Auto-generated method stub
  371. Log.d("pk", "onPageScrolled");
  372. }
  373.  
  374. @Override
  375. public void onPageSelected(int arg0) {
  376. // TODO Auto-generated method stub
  377. Log.d("pk", "onPageSelected");
  378. }
  379.  
  380. public String[] getStringArray() {
  381. return stringArray;
  382. }
  383.  
  384. public void setStringArray(String[] stringArray) {
  385. this.stringArray = stringArray;
  386. }
  387. }
  388. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement