zoukankan      html  css  js  c++  java
  • 15 ActionProvider代码例子

    • Menu文件夹下代码:

      <menu xmlns:android="http://schemas.android.com/apk/res/android" >
      
          <!-- 
          系统提供的分享: android:actionProviderClass="包名.类名"
          android:actionProviderClass="android.widget.ShareActionProvider"
          -->
          <item
              android:id="@+id/action_shared"
              android:orderInCategory="100"
              android:showAsAction="always"
              android:actionProviderClass="android.widget.ShareActionProvider"
              />
          <item
              android:id="@+id/action_custom"
              android:orderInCategory="100"
              android:showAsAction="always"
              android:actionProviderClass="com.qf.day15_actionbar_demo3.MyProvider"
              />
      
      </menu>
      
      • 界面xml代码:
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:paddingBottom="@dimen/activity_vertical_margin"
          android:paddingLeft="@dimen/activity_horizontal_margin"
          android:paddingRight="@dimen/activity_horizontal_margin"
          android:paddingTop="@dimen/activity_vertical_margin"
          tools:context=".MainActivity" >
      
          <TextView
              android:id="@+id/tv"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="内涵段子" />
      
      </RelativeLayout>
      
    • MainActivity界面逻辑代码:

      package com.qf.day15_actionbar_demo3;
      
      import android.os.Bundle;
      import android.app.Activity;
      import android.content.Intent;
      import android.view.Menu;
      import android.view.MenuItem;
      import android.widget.ShareActionProvider;
      import android.widget.TextView;
      
      public class MainActivity extends Activity {
      
      
          private TextView tv;
      
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              tv = (TextView) findViewById(R.id.tv);
          }
      
          @Override
          public boolean onCreateOptionsMenu(Menu menu) {
              // Inflate the menu; this adds items to the action bar if it is present.
              getMenuInflater().inflate(R.menu.main, menu);
      
              MenuItem item = menu.findItem(R.id.action_shared);
              ShareActionProvider provider = (ShareActionProvider) item.getActionProvider();
      
              Intent shareIntent = new Intent(Intent.ACTION_SEND);
              shareIntent.setType("text/plain");//分享的数据类型   文本
              //分享的数据
              shareIntent.putExtra(Intent.EXTRA_TEXT, tv.getText().toString().trim());
      
              provider.setShareIntent(shareIntent);
      
              return true;
          }
      
      }
      
    • 一个自定义ActionProvider代码:

      package com.qf.day15_actionbar_demo3;
      
      import android.content.Context;
      import android.view.ActionProvider;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.TextView;
      import android.widget.Toast;
      
      public class MyProvider extends ActionProvider {
      
          private Context context;
      
      
          public MyProvider(Context context) {
              super(context);
              // TODO Auto-generated constructor stub
              this.context = context;
          }
      
          @Override
          @Deprecated
          public View onCreateActionView() {
              // TODO Auto-generated method stub
              TextView tv = new TextView(context);
      
              tv.setText("分享");
      
              tv.setOnClickListener(new OnClickListener() {
      
                  @Override
                  public void onClick(View v) {
                      // TODO Auto-generated method stub
                      Toast.makeText(context, "自定义的分享", 0).show();
                  }
              });
      
              return tv;
          }
      
      }
      
  • 相关阅读:
    centos7安装pycharm
    centos7 mysql数据库安装
    删除MySQL服务
    计组第三章预习
    攻防世界web新手练习区
    原码补码预习
    第一次总结
    第三章预习
    数据结构十进制数表示
    预习原码补码
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152250.html
Copyright © 2011-2022 走看看