在 sharingIntent Extra 中设置由位置管理器检索的文本
Set text retreived by location manager inside sharingIntent Extra
想请教如何在里面设置文字TEXT_HERE
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, TEXT_HERE);
我已经使用位置管理器通过 gps 检索了当前的经度和纬度。然后我将这两个值设置在 longitude_placeholder
和 latitude_placeholder
中以向用户显示他们当前的位置。
像这样:
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
}
然后我制作了一个按钮 btn_share
并制作了 onClick
方法来实现 sharingIntent 功能。
public void onClick(View v)
{
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, LONGITUDE_HERE);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, LATITUDE_HERE);
startActivity(Intent.createChooser(sharingIntent, "Share via"));
}
现在是问题。我如何设置 LONGITUDE_HERE
和 LATITUDE_HERE
使用 onLocationChanged
方法检索到的值以通过单击按钮共享经度和纬度值?
如有任何帮助,我们将不胜感激。
提前致谢。
有两种方法可以做到:
1) 声明你的两个 TextView'
s global
2) 将您的 latitude
和 longitude
变量声明为全局变量,然后使用
longitude = location.getLongitude();
latitude = location.getLatitude();
之后您可以使用这两个变量来共享额外的文本或从您的文本视图中获取文本
更改位置的变量 static
并将其用于共享意图。
您可以为纬度和经度创建全局变量。
并修改
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
lattitudeString = location.getLatitude();
longitudeString = location.getLongitude();
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
}
你可以用这两个变量替换LONGITUDE_HERE
和LATITUDE_HERE
。
将 2 个字符串声明为全局字符串
字符串 LONGITUDE_HERE="";
字符串 LATITUDE_HERE="";
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
LONGITUDE_HERE=""+location.getLongitude();
LATITUDE_HERE=""+location.getLatitude();
}
并在 onClick
public void onClick(View v)
{
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
if(LONGITUDE_HERE!=null&&LATITUDE_HERE!=null)
{
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT1, LONGITUDE_HERE);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT2, LATITUDE_HERE);
}
startActivity(Intent.createChooser(sharingIntent, "Share via"));
}
想请教如何在里面设置文字TEXT_HERE
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, TEXT_HERE);
我已经使用位置管理器通过 gps 检索了当前的经度和纬度。然后我将这两个值设置在 longitude_placeholder
和 latitude_placeholder
中以向用户显示他们当前的位置。
像这样:
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
}
然后我制作了一个按钮 btn_share
并制作了 onClick
方法来实现 sharingIntent 功能。
public void onClick(View v)
{
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, LONGITUDE_HERE);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, LATITUDE_HERE);
startActivity(Intent.createChooser(sharingIntent, "Share via"));
}
现在是问题。我如何设置 LONGITUDE_HERE
和 LATITUDE_HERE
使用 onLocationChanged
方法检索到的值以通过单击按钮共享经度和纬度值?
如有任何帮助,我们将不胜感激。 提前致谢。
有两种方法可以做到:
1) 声明你的两个 TextView'
s global
2) 将您的 latitude
和 longitude
变量声明为全局变量,然后使用
longitude = location.getLongitude();
latitude = location.getLatitude();
之后您可以使用这两个变量来共享额外的文本或从您的文本视图中获取文本
更改位置的变量 static
并将其用于共享意图。
您可以为纬度和经度创建全局变量。
并修改
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
lattitudeString = location.getLatitude();
longitudeString = location.getLongitude();
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
}
你可以用这两个变量替换LONGITUDE_HERE
和LATITUDE_HERE
。
将 2 个字符串声明为全局字符串
字符串 LONGITUDE_HERE="";
字符串 LATITUDE_HERE="";
@Override
public void onLocationChanged(Location location)
{
TextView longitude = (TextView) findViewById(R.id.longitude_placeholder);
TextView latitude = (TextView) findViewById(R.id.latitude_placeholder);
longitude.setText("Longitude :" + location.getLongitude());
latitude.setText("Latitude : " + location.getLatitude());
LONGITUDE_HERE=""+location.getLongitude();
LATITUDE_HERE=""+location.getLatitude();
}
并在 onClick
public void onClick(View v)
{
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
if(LONGITUDE_HERE!=null&&LATITUDE_HERE!=null)
{
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT1, LONGITUDE_HERE);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT2, LATITUDE_HERE);
}
startActivity(Intent.createChooser(sharingIntent, "Share via"));
}