2013-11-20 2 views
0

나는 미친 문제가 있습니다. 내 XML, 나는 2 Buttons안드로이드 버튼 클릭 show webView

페이스 북과 Twiiter

Button다면 같은 레이아웃에 나는 내가 페이스 북 Button을 클릭 WebView

, 그것은 WebView 및 이동 같은 페이스 북을 열어가 Twitter의 경우

이것은 내 레이아웃 코드입니다.

페이지입니다. 버튼을 클릭 ON

private WebView webView; 
webView = (WebView) findViewById(R.id.webView1); 
webView.getSettings().setJavaScriptEnabled(true); 

:

webView.loadUrl("http://www.facebook.com"); 

내가이 일을 할 수있다 희망 XML

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/background2" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="34dp" 
     android:text="@string/page" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textColor="#3600ff" /> 

    <WebView 
     android:id="@+id/webView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/buttonFace" /> 

    <Button 
     android:id="@+id/buttonFace" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/buttonTwitter" 
     android:layout_alignBottom="@+id/buttonTwitter" 
     android:layout_alignParentRight="true" 
     android:text="@string/facebook" /> 

    <Button 
     android:id="@+id/buttonTwitter" 
     android:layout_width="150dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/textView1" 
     android:text="@string/twitter" /> 

</RelativeLayout> 
+0

당신의 문제는 명확하게 설명하고 있습니다 .... –

+0

그래서 뭐가 문제 야? 당신은 무엇을 이루고 싶습니까? –

+0

내 Xml 파일에서 볼 수 있듯이, 페이스 북과 트위터 및 WebView 용 버튼 2 개, 동일한 Xml 파일의 WebView에서 tweak 웹 사이트 또는 페이스 북을 클릭하면 원하는대로 바뀔 수 있습니다. – user2983357

답변

0

이러한 변경을했다.

+0

그것은 작동하지 않습니다 – user2983357

+0

당신의 허가를 받아들이십시오 bGorle

0

이 XML 코드

호출이 의도

Intent faq = new Intent(this,WebViewActivity.class); 
       faq.putExtra("url", "Your URL"); 
       faq.putExtra("header_text", "Heading"); 
       startActivity(faq); 

<include 
     android:id="@+id/incld" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     layout="@layout/header" /> 

    <WebView 
     android:id="@+id/webview01" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" > 
    </WebView> 
이는 자바 코드

public class WebViewActivity extends Activity { 
    private WebView webview; 
    private static final String TAG = "Main"; 
    private ProgressDialog progressBar; 
    private TextView header_maintext; 
    private TextView headeroptiontext; 
    private RelativeLayout back; 



    /** Called when the activity is first created. */ 
    @SuppressLint("SetJavaScriptEnabled") @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.webview_layout); 


     url_string = getIntent().getStringExtra("url"); 
     header_maintext_string = getIntent().getStringExtra("header_text"); 

     webview = (WebView)findViewById(R.id.webview01); 
     header_maintext= (TextView)findViewById(R.id.header_maintext); 
     header_maintext.setText(header_maintext_string); 

     headeroptiontext = (TextView)findViewById(R.id.headeroptiontext); 
     headeroptiontext.setVisibility(View.GONE); 

     WebSettings settings = webview.getSettings(); 
     settings.setJavaScriptEnabled(true); 
     webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
     webview.getSettings().setLoadWithOverviewMode(true); 
     webview.getSettings().setUseWideViewPort(true); 

      back = (RelativeLayout) findViewById(R.id.back_layout); 
      back.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View arg0) 
      { 
       // TODO Auto-generated method stub 
       if(webview.canGoBack() == true) 
        { 
         webview.goBack(); 
        } 
       else 
        { 
         finish(); 
        } 
      } 
     }); 

     final AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 

     progressBar = ProgressDialog.show(WebViewActivity.this, "tittle", "Loading..."); 

     webview.setWebViewClient(new WebViewClient() { 
      public boolean shouldOverrideUrlLoading(WebView view, String url) { 

       view.loadUrl(url); 
       return true; 
      } 

      public void onPageFinished(WebView view, String url) { 
       Log.i(TAG, "Finished loading URL: " +url); 
       if (progressBar.isShowing()) { 
        progressBar.dismiss(); 
       } 
      } 

      public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 

       Toast.makeText(WebViewActivity.this, "Oh no! " + description, Toast.LENGTH_SHORT).show(); 
       alertDialog.setTitle("Error"); 
       alertDialog.setMessage(description); 
       alertDialog.setButton("OK", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int which) { 
         return; 
        } 
       }); 
       alertDialog.show(); 
      } 
     }); 
     webview.loadUrl(url_string); 


    } 
    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     if(event.getAction() == KeyEvent.ACTION_DOWN){ 
      switch(keyCode) 
      { 
      case KeyEvent.KEYCODE_BACK: 
       if(webview.canGoBack() == true){ 
        webview.goBack(); 
       }else{ 
        finish(); 
       } 
       return true; 
      } 

     } 
     return super.onKeyDown(keyCode, event); 
    } 
} 
+0

이 작동하지 않습니다 – user2983357

+0

+0

다 끝났어 ................... –