作为我的应用中的导航的一部分,我将我的应用程序与lats和longs一起重定向到谷歌地图.我已成功传递源和目标,并直接在Google地图中打开它.
Uri gmmIntentUri = Uri.parse("google.navigation:q=9.883456,78.120150");
Intent mapIntent = new Intent(Intent.ACTION_VIEW,gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Run Code Online (Sandbox Code Playgroud)
但我的问题是如何通过意图将多个点传递到Google地图.最近谷歌推出了在谷歌地图应用程序的移动版本中添加多个目的地,我认为它可以在Google Directions API中使用,但我不想通过在我的应用程序中集成Google方向来采取扭曲的路径,我宁愿采取谷歌地图的高速公路.
我一直在搜索这个主题,但我找到的只是以下内容,但也不起作用.
Intent intent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("http://maps.google.com/maps?saddr=st.%20louis,mo&daddr=washington,dc%20to:chicago,il%20to:new%20york,ny"));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
上面的代码只有在我们在Chrome中打开它时才有效,但是我希望它在Google地图中打开,甚至添加一个mapIntent.setPackage("com.google.android.apps.maps");不起作用,但上面的uri通过的显然是一个可以在谷歌地图中找到的网址.
任何有关如何实现这一目标的见解或任何想法都将受到欢迎.
PS:这可以实现吗?????
我试图在Android中使用Path绘制一个心形的画布.代码如下:
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// Fill the canvas with background color
canvas.drawColor(Color.WHITE);
// paint.setShader(null);
// Defining of the heart path starts
path.moveTo(left + WIDTH / 2, top + HEIGHT / 4); // Starting point
// Create a cubic Bezier cubic left path
path.cubicTo(left+WIDTH/5,top,
left+WIDTH/4,top+4*HEIGHT/5,
left+WIDTH/2, top+HEIGHT);
// This is right Bezier cubic path
path.cubicTo(left + 3 * WIDTH / 4, top + 4 * HEIGHT / 5,
left + 4 * WIDTH / 5, top,
left …Run Code Online (Sandbox Code Playgroud) 我正在尝试替换Android中的片段,并且花费将近2-3秒将片段加载到UI中.我不确定是什么原因导致了这个问题,因为我没有执行繁重的线程onCreateView.
我的片段需要花费太多时间才能加载onCreateView.
我在onCreateView中所做的就是根据来自DB的数据来查看某些布局的可见性.我不认为加载页面会花费这么多时间,这对我来说没有意义.
到目前为止我尝试了什么:
我没有尝试过任何可靠的东西,除了以下是愚蠢的一些愚蠢的实现或我想是这样的..
试图在Async Task中放置一大块代码,但正如大多数代码所要求的那样setVisibility(),它不起作用doInBackground().添加a runOnUIThread()也与不使用异步任务相同.
我怀疑片段管理器可能需要一些时间来将片段加载到UI中,但是当我用另一个具有较少UI组件的片段替换时,它似乎加载得很快getFragmentManager().executePendingTransactions();.我也尝试使用.
这就是我到目前为止所尝试的,但也发现选项2是完全没必要的,因为我打印之前的日志return convertView;需要1-2秒才能打印.我不确定出了什么问题或出了什么问题.任何帮助都感激不尽.
我正在尝试登录Facebook并遵循Facebook开发者网站中给出的确切代码.应用程序无法打开,并说应用程序ID不能为空.
编辑:(整个代码)
public class MainActivity extends FragmentActivity implements OnClickListener {
TextView tv;
ImageView facebookbutton, pic, b;
Facebook fb;
SharedPreferences sp;
Thread t = new Thread();
ImageView snap;
JSONObject obj;
private MainFragment mainfragment;
private static final String TAG = "MainFragment";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(savedInstanceState == null)
{
mainfragment = new MainFragment();
getSupportFragmentManager().beginTransaction().add(android.R.id.content,mainfragment).commit();
}
else
{
mainfragment = (MainFragment) getSupportFragmentManager().findFragmentById(android.R.id.content);
}
}
Run Code Online (Sandbox Code Playgroud)
getSupportFragmentManager()..是它抛出错误的行.我也添加了子类MainFragment.
MainFragment :(继续在同一类的OnCreate()之后)
private class MainFragment extends Fragment
{
private UiLifecycleHelper uiHelper;
public View onCreateView(LayoutInflater …Run Code Online (Sandbox Code Playgroud) 以下问题可能听起来有点愚蠢,但我觉得愚蠢没有限制,所以在这里.我在Android中使用Canvas绘制了一个Heart并且在绘制内心方面没有任何问题,但是我无法在会面点让人心旷神怡.我的心看起来像
代码:
left_x_moveto = 200;
left_y_moveto = 45;
left_x1 = 197;
left_y1 = -35;
left_x2 = 60;
left_y2 = 20;
left_x3 = 193;
left_y3 = 130;
right_x_moveto = 200;
right_y_moveto = 45;
right_x1 = 197;
right_y1 = -35;
right_x2 = 345;
right_y2 = 20;
right_x3 = 193;
right_y3 = 130;
heart_outline_paint.setColor(getResources().getColor(R.color.heart_outline_color)); // Change the boundary color
heart_outline_paint.setStrokeWidth(15);
heart_outline_paint.setStyle(Paint.Style.STROKE);
path.moveTo(left_x_moveto, left_y_moveto);
path.cubicTo(left_x1, left_y1, left_x2, left_y2, left_x3, left_y3);
path.moveTo(right_x_moveto, right_y_moveto);
path.cubicTo(right_x1, right_y1, right_x2, right_y2, right_x3, right_y3);
canvas.drawPath(path, heart_outline_paint);
Run Code Online (Sandbox Code Playgroud)
到目前为止我尝试了什么:
left_x_moveto, …我只是在Android上崭露头角,并且有一个场景,用户可以使用相机拍摄照片,并且照片将存储在SDCard中。我需要使用动态名称保存照片,即,我希望图像名称为图像1,图像2,依此类推。我最初将计数器值设置为1,因此第一张图像将被存储为图像1,下次计数器将增加该值并再次存储。
问题 :
我的问题是,每次关闭并重新打开应用程序后,我无法增加计数器值。我已经尝试了很多,它再次将计数器设置回1。
代码:
int count;
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
int defaultValue = getPreferences(MODE_PRIVATE).getInt("count_key",count);
defaultValue = count;
editor.putInt("count_value",defaultValue).commit();
if(count == 1)
{
count = 1;
getPreferences(MODE_PRIVATE).edit().putInt("count_key",count).commit();
}
else
{
++count;
getPreferences(MODE_PRIVATE).edit().putInt("count_key",count).commit();
count = getPreferences(MODE_PRIVATE).getInt("count_key",count);
System.out.println("The count value is " + count);
}
Run Code Online (Sandbox Code Playgroud)
在执行时,它每次都将计数值返回为1,并且似乎并不增加计数值。我第一次打开它应该是1,然后是2,依此类推。我的逻辑是否有问题,或者SharedPrefs出了问题。我在StackOverFlow上冲浪了很多,但似乎并没有遇到我需要的样式。任何帮助将是高度赞赏的家伙。提前致谢。