انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
عدم نمایش کلمات فارسی در webview (در برنامه نویسی اندروید)

عدم نمایش کلمات فارسی در webview (در برنامه نویسی اندروید)

#12
با سپاس از توجه شما.. من نکاتی رو که گفتید رو اجرا کرده ام .. مباحث این پرسش رو هم بارها خوندم ولی باز نتیجه ای نداد
این کد صفحه index.php سرور ساید من که بدین شکل می باشد
کد پی‌اچ‌پی:
<?php 
            $filename 
'includes/db_connection.php';
            
            if(!
file_exists($filename)){        
            
                
header("location:installation/index.php");
                exit;
            }
              
            include(
'includes/db_connection.php');            
            include(
'common.php');
            include(
'messages/messages.php');
            
            
mysql_query("SET NAMES 'utf8'");
            
            
$admin_sql "select * from tbl_general";
            
$admin_mysql mysql_query($admin_sql);
            
$admin_row mysql_fetch_array($admin_mysql);
            
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- <!DOCTYPE html> -->
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <!-- start: Meta 
    <meta charset="utf-8"> -->
    <title><?php if($admin_row['project_title']!=""){echo $admin_row['project_title'];}else{ echo "App Project";}?></title>
     
    <!-- end: Meta -->
    
    <!-- start: Mobile Specific -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- end: Mobile Specific -->
    
    <!-- start: CSS -->
    <link id="bootstrap-style" href="css/bootstrap.min.css" rel="stylesheet">
    <link href="css/bootstrap-responsive.min.css" rel="stylesheet">
    <link id="base-style" href="css/style.css" rel="stylesheet">
    <link id="base-style-responsive" href="css/style-responsive.css" rel="stylesheet">
    <link href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800&subset=latin,cyrillic-ext,latin-ext' rel='stylesheet' type='text/css'>
    <!-- end: CSS -->
    

    <!-- The HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
          <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
        <link id="ie-style" href="css/ie.css" rel="stylesheet">
    <![endif]-->
    
    <!--[if IE 9]>
        <link id="ie9style" href="css/ie9.css" rel="stylesheet">
    <![endif]-->
        
    <!-- start: Favicon -->
    <link rel="shortcut icon" href="img/favicon.ico">
    <!-- end: Favicon -->
    
            <style type="text/css">
            body { background: url(img/bg-login.jpg) !important; }
        </style>
        
        
        
</head>

<body>
        <div class="container-fluid-full">
        <div class="row-fluid">
                    
            <div class="row-fluid">
              <div class="login-box">
                <h2>Login</h2>
                <p style="color:#990000; font-size:14px;" align="center">
                  <?php if(isset($_SESSION['msg'])){ 
                    
                            echo 
$admin_lang[$_SESSION['msg']] ; 
                            unset(
$_SESSION['msg']);        
                            
                    }
?>
                </p>
                <form class="form-horizontal" action="login_db.php" method="post">
                  <fieldset>
                  <div class="input-prepend" title="Username"> <span class="add-on"><i class="halflings-icon user"></i></span>
                      <input class="input-large span10" name="username" id="username" type="text" placeholder="type username"/>
                  </div>
                  <div class="clearfix"></div>
                  <div class="input-prepend" title="Password"> <span class="add-on"><i class="halflings-icon lock"></i></span>
                      <input class="input-large span10" name="password" id="password" type="password" placeholder="type password"/>
                  </div>
                  <div class="button-login">
                    <button type="submit" class="btn btn-primary">Login</button>
                  </div>
                  <div class="clearfix"></div>
                </form>
              </div>
              <!--/span-->
</div>
            <!--/row-->
            

    </div><!--/.fluid-container-->
    
        </div><!--/fluid-row-->
    
    <!-- start: JavaScript-->

        <script src="js/jquery-1.9.1.min.js"></script>
    <script src="js/jquery-migrate-1.0.0.min.js"></script>
    
        <script src="js/jquery-ui-1.10.0.custom.min.js"></script>
    
        <script src="js/jquery.ui.touch-punch.js"></script>
    
        <script src="js/modernizr.js"></script>
    
        <script src="js/bootstrap.min.js"></script>
    
        <script src="js/jquery.cookie.js"></script>
    
        <script src='js/fullcalendar.min.js'></script>
    
        <script src='js/jquery.dataTables.min.js'></script>

        <script src="js/excanvas.js"></script>
    <script src="js/jquery.flot.js"></script>
    <script src="js/jquery.flot.pie.js"></script>
    <script src="js/jquery.flot.stack.js"></script>
    <script src="js/jquery.flot.resize.min.js"></script>
    
        <script src="js/jquery.chosen.min.js"></script>
    
        <script src="js/jquery.uniform.min.js"></script>
        
        <script src="js/jquery.cleditor.min.js"></script>
    
        <script src="js/jquery.noty.js"></script>
    
        <script src="js/jquery.elfinder.min.js"></script>
    
        <script src="js/jquery.raty.min.js"></script>
    
        <script src="js/jquery.iphone.toggle.js"></script>
    
        <script src="js/jquery.uploadify-3.1.min.js"></script>
    
        <script src="js/jquery.gritter.min.js"></script>
    
        <script src="js/jquery.imagesloaded.js"></script>
    
        <script src="js/jquery.masonry.min.js"></script>
    
        <script src="js/jquery.knob.modified.js"></script>
    
        <script src="js/jquery.sparkline.min.js"></script>
    
        <script src="js/counter.js"></script>
    
        <script src="js/retina.js"></script>

        <script src="js/custom.js"></script>
    <!-- end: JavaScript-->
    
</body>
</html> 
در کدهای بالا بنا به دانش اندک بنذه تمامی چهارچوب ها رو رعایت کرده ام
اما این هم کد صفحه نمایش ایتم ها با وب ویو و تکست ویو جاوا در پروژه اندروید می باشد
کد پی‌اچ‌پی:
package com.apps.bastakmusic;

import java.util.ArrayList;
import java.util.List;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.Settings.Secure;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RatingBar;
import android.widget.RatingBar.OnRatingBarChangeListener;
import android.widget.TextView;
import android.widget.Toast;

import com.example.imageloader.ImageLoader;
import com.example.item.ItemRelated;
import com.example.item.Item_MovieList;
import com.example.util.AlertDialogManager;
import com.example.util.Constant;
import com.example.util.JsonUtils;
import com.example.util.SessionManager;

public class 
MovieDetailsActivity extends ActionBarActivity{

    
Toolbar toolbar;
    
TextView txt_mname,txt_mdate,txt_mcast,txt_mview;
    
WebView webmdetail;
    
ImageView img_moview;
    
int position;
    
String Id,mid,mcid,mgid,mtitle,mcast,mimg,mdesc,mdate,mview,mrate;
    
AlertDialogManager alert = new AlertDialogManager();
    public 
ImageLoader imageLoader
    List<
Item_MovieListarrayOfHome;
    
Item_MovieList objAllBean;
    List<
ItemRelatedarrayofRelated;
    
ItemRelated objChildBean;
    
LinearLayout linear,linearContent;
    
ProgressBar pbar;
    
String rate_msg;

    @
Override
    
protected void onCreate(Bundle savedInstanceState) {
        
// TODO Auto-generated method stub
        
super.onCreate(savedInstanceState);
    
//    StartAppAd.init(this, getString(R.string.startapp_dev_id), getString(R.string.startapp_app_id,false));
        
setContentView(R.layout.moviedetail_activity);
        
toolbar = (android.support.v7.widget.Toolbarthis.findViewById(R.id.toolbar);
        
//toolbar.setTitle(Constant.CATEGORY_NAMEE);
        
this.setSupportActionBar(toolbar);
        
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        
getSupportActionBar().setDisplayShowHomeEnabled(true);
        
imageLoader=new ImageLoader(MovieDetailsActivity.this);

    
//    StartAppAd.showSlider(this);

        
Constant.DEVICE_ID=Secure.getString(MovieDetailsActivity.this.getContentResolver(),
                
Secure.ANDROID_ID);
        
//Log.e("Device Id", Constant.DEVICE_ID);

        
txt_mname=(TextView)findViewById(R.id.txt_mname);
        
txt_mdate=(TextView)findViewById(R.id.txt_mdate);
        
txt_mcast=(TextView)findViewById(R.id.txt_mcast);
        
txt_mview=(TextView)findViewById(R.id.txt_mview);
        
img_moview=(ImageView)findViewById(R.id.img_mvoiew);
        
webmdetail=(WebView)findViewById(R.id.webView1);
        
linear=(LinearLayout)findViewById(R.id.content);
        
linearContent=(LinearLayout)findViewById(R.id.rel_c_content);

        
arrayOfHome=new ArrayList<Item_MovieList>();
        
arrayofRelated=new ArrayList<ItemRelated>();

        if (
JsonUtils.isNetworkAvailable(MovieDetailsActivity.this)) {
            new 
MyTask().execute(Constant.SINGLEMOVIE_URL+Constant.CATEGORYLIST_IDD);
        } else {
            
showToast(getString(R.string.conn_msg3));
            
alert.showAlertDialog(MovieDetailsActivity.thisgetString(R.string.conn_msg4),
                    
getString(R.string.conn_msg2), false);
        }

        if (
JsonUtils.isNetworkAvailable(MovieDetailsActivity.this)) {
            new 
MyTaskView().execute(Constant.VIEWCOUNT_URL+Constant.DEVICE_ID+"&movie_id="+Constant.CATEGORYLIST_IDD);
            
//Log.e("rate", ""+Constant.RATING_URL+Constant.DEVICE_ID+"&movie_id="+Constant.CATEGORYLIST_IDD);
        
} else {
            
showToast("پیوند به اینترنت یافت نشد");
            
alert.showAlertDialog(MovieDetailsActivity.this"خطای پیوند به اینترنت",
                    
"اینترنت خود را وصل کنید"false);
        }     

    }

    private    class 
MyTask extends AsyncTask<StringVoidString> {

        
ProgressDialog pDialog;

        @
Override
        
protected void onPreExecute() {
            
super.onPreExecute();

            
pDialog = new ProgressDialog(MovieDetailsActivity.this);
            
pDialog.setMessage("در حال بارگذاری...");
            
pDialog.setCancelable(false);
            
pDialog.show();
        }

        @
Override
        
protected String doInBackground(String... params) {
            return 
JsonUtils.getJSONString(params[0]);
        }

        @
Override
        
protected void onPostExecute(String result) {
            
super.onPostExecute(result);

            if (
null != pDialog && pDialog.isShowing()) {
                
pDialog.dismiss();
            }

            if (
null == result || result.length() == 0) {
                
showToast("خطای اتصال به سرور");
                
alert.showAlertDialog(MovieDetailsActivity.this"اتصال به سرور شکست خورد",
                        
"سرور برنامه یا اینترنت ضعیف باعث این خطا می باشد"false);

            } else {

                try {
                    
JSONObject mainJson = new JSONObject(result);
                    
JSONArray jsonArray mainJson.getJSONArray(Constant.CATEGORY_ARRAY_NAME);
                    
JSONObject objJson null;
                    for (
int i 0jsonArray.length(); i++) {
                        
objJson jsonArray.getJSONObject(i);

                        
Item_MovieList objItem = new Item_MovieList();

                        
objItem.setCLID(objJson.getString(Constant.CATEGORYLIST_ID));
                        
objItem.setCLCID(objJson.getString(Constant.CATEGORYLIST_CID));
                        
objItem.setCLGID(objJson.getString(Constant.CATEGORYLIST_GID));
                        
objItem.setCLTITLE(objJson.getString(Constant.CATEGORYLIST_TITLE));
                        
objItem.setCLMCAST(objJson.getString(Constant.CATEGORYLIST_MCAST));
                        
objItem.setCLMIMG(objJson.getString(Constant.CATEGORYLIST_MIMG));
                        
objItem.setCLMDESC(objJson.getString(Constant.CATEGORYLIST_MDESC));
                        
objItem.setCLMDATE(objJson.getString(Constant.CATEGORYLIST_MDATE));
                        
objItem.setCLMVIEW(objJson.getString(Constant.CATEGORYLIST_MVIEW));
                        
objItem.setCLMRATE(objJson.getString(Constant.CATEGORYLIST_MRATE));

                        
arrayOfHome.add(objItem);

                        
JSONArray jsonArraychild objJson.getJSONArray(Constant.RELATED_ITEM_ARRAY_NAME);
                        if(
jsonArraychild.length()==0)
                        {

                        }
                        else
                        {
                            for(
int j=;jjsonArraychild.length();j++)
                            {
                                
JSONObject objChild jsonArraychild.getJSONObject(j);
                                
ItemRelated item=new ItemRelated();
                                
item.setRelatedId(objChild.getString(Constant.RELATED_ITEM_MID));
                                
item.setRelatedTitle(objChild.getString(Constant.RELATED_ITEM_MNAME));
                                
item.setRelatedImage(objChild.getString(Constant.RELATED_ITEM_MTHUMB));
                                
arrayofRelated.add(item);
                            }
                        }

                    }

                } catch (
JSONException e) {
                    
e.printStackTrace();
                }

                
setAdapterToListview();
            }

        }
    }

    public 
void setAdapterToListview() {

        
objAllBean=arrayOfHome.get(0);
        
mid=objAllBean.getCLID();
        
mcid=objAllBean.getCLCID();
        
mgid=objAllBean.getCLGID();
        
mtitle=objAllBean.getCLTITLE();
        
mcast=objAllBean.getCLMCAST();
        
mimg=objAllBean.getCLMIMG();
        
mdesc=objAllBean.getCLMDESC();
        
mdate=objAllBean.getCLMDATE();
        
mview=objAllBean.getCLMVIEW();
        
mrate=objAllBean.getCLMRATE();

        
txt_mname.setText(mtitle);
        
txt_mdate.setText(mdate);
        
txt_mcast.setText(mcast);
        
txt_mview.setText(mview);

        
imageLoader.DisplayImage(Constant.SERVER_IMAGE_UPFOLDER_THUMB+mimg,img_moview);

        
webmdetail.setBackgroundColor(Color.parseColor("#ffffff"));
        
webmdetail.getSettings().setBuiltInZoomControls(true);
        
webmdetail.getSettings().setJavaScriptEnabled(true);
        
webmdetail.getSettings().setDefaultTextEncodingName("UTF-8");
        
String mimeType "text/html";
        
String encoding "utf-8";
        
String htmlText mdesc;

        
String text "<html><head>"
                
"<style type=\"text/css\">body{color: #000000;}"
                
"</style></head>"
                
"<body>"                          
                
+  htmlText
                
"</body></html>";

        
webmdetail.loadData(textmimeTypeencoding);

        if(
arrayofRelated.size()==0)
        {
            
linearContent.removeAllViews();
            
TextView txt=new TextView(MovieDetailsActivity.this);
            
txt.setText("موزیک مشابه یافت نشد");
            
txt.setTextColor(getResources().getColor(R.color.black));
            
txt.setTextSize(16f);
            
linearContent.addView(txt);
        }
        else
        {
            
RelatedContent();    
        }

    }
    public 
void RelatedContent()
    {
        
linearContent.removeAllViews();
        
int i=0;
        do
        {
            if(
i>=arrayofRelated.size())
            {
                return;
            }

            
View view getLayoutInflater().inflate(R.layout.related_contentnull);
            final 
ImageView imageView = (ImageView)view.findViewById(R.id.img_rela);
            final 
TextView txt_relmname=(TextView)view.findViewById(R.id.text_relmname);
            
imageView.setId(i);

            
linearContent.addView(view);
            
objChildBean=arrayofRelated.get(i);
            
imageLoader.DisplayImage(Constant.SERVER_IMAGE_THUMB+objChildBean.getRelatedImage().toString(), imageView);
            
txt_relmname.setText(objChildBean.getRelatedTitle().toString());

            
imageView.setOnClickListener(new View.OnClickListener() {

                @
Override
                
public void onClick(View v) {
                    
// TODO Auto-generated method stub
                    
objChildBean=arrayofRelated.get(imageView.getId());
                    
Intent intdetials=new Intent(MovieDetailsActivity.this,MovieDetailsActivity.class);
                    
intdetials.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    
Constant.CATEGORYLIST_IDD=objChildBean.getRelatedId();
                    
//Constant.SINGLE_CHANNEL=objChildBean.getRelatedTitle();
                    
startActivity(intdetials);
                    
finish();
                }
            });
            
i++;
        }while(
true);
    }

    public 
void showToast(String msg) {
        
Toast.makeText(MovieDetailsActivity.thismsgToast.LENGTH_LONG).show();

    }
    @
Override
    
public boolean onCreateOptionsMenu(Menu menu) {
        
MenuInflater inflater getMenuInflater();
        
inflater.inflate(R.menu.detail_menumenu);

        return 
super.onCreateOptionsMenu(menu);
    }

    @
Override
    
public boolean onOptionsItemSelected(MenuItem menuItem)
    {       
        switch (
menuItem.getItemId()) 
        {
        case 
android.R.id.home
            
onBackPressed();
            return 
true;

        case 
R.id.rating:

            final 
Dialog dialog = new Dialog(MovieDetailsActivity.this);
            
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            
dialog.setContentView(R.layout.ratedialog);
            
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));

            final 
TextView txtrate=(TextView)dialog.findViewById(R.id.textView1);
            
Button btnrate=(Button)dialog.findViewById(R.id.button1);
            
RatingBar rating=(RatingBar)dialog.findViewById(R.id.ratingBar1);

            
rating.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {

                @
Override
                
public void onRatingChanged(RatingBar ratingBarfloat rating,
                        
boolean fromUser) {
                    
// TODO Auto-generated method stub
                    
txtrate.setText(String.valueOf(rating));
                }
            });


            
btnrate.setOnClickListener(new View.OnClickListener() {

                @
Override
                
public void onClick(View v) {
                    
// TODO Auto-generated method stub


                    
if(txtrate.getText().toString().equalsIgnoreCase(""))
                    {
                        
showToast("حداقل یک ستاره انتخاب کنید");
                    }
                    else
                    {
                        
dialog.dismiss();

                        if (
JsonUtils.isNetworkAvailable(MovieDetailsActivity.this)) {
                            new 
MyTaskRating().execute(Constant.RATING_URL+Constant.DEVICE_ID+"&rate="+txtrate.getText().toString()+"&movie_id="+mid);
                            
//Log.e("rate", ""+Constant.RATING_URL+Constant.DEVICE_ID+"&rate="+txtrate.getText().toString()+"&movie_id="+mid);
                        
} else {
                            
showToast("No Network Connection!!!");
                            
alert.showAlertDialog(MovieDetailsActivity.this"Internet Connection Error",
                                    
"Please connect to working Internet connection"false);
                        }
                    }

                }
            });
            
dialog.show();



            return 
true;  

        case 
R.id.coment:
            if(
isLogin())
            {
                
objAllBean=arrayOfHome.get(position);
                
Constant.CATEGORYLIST_IDD=objAllBean.getCLID();
                
Constant.ACTORLIST_TITLEE=objAllBean.getCLTITLE();
                
Log.e("vid"""+Constant.CATEGORYLIST_IDD);
                
Intent intentupload=new Intent(getApplicationContext(),CommentActivity.class);
                
intentupload.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                
startActivity(intentupload);
            }
            else
            {
                
//Toast.makeText(MovieDetailsActivity.this, "If you want add comment then you need to Login First.", Toast.LENGTH_SHORT).show();
                
Intent up_auth=new Intent(getApplicationContext(),AuthonticationActivity.class);
                
up_auth.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                
startActivity(up_auth);    
                
Constant.LOGIN_FORM="Upload";
            }

            return 
true;


        default:
            return 
super.onOptionsItemSelected(menuItem);
        }
    }
    public 
boolean isLogin() {

        
SessionManager sessionManager=new SessionManager(getApplicationContext());
        return 
sessionManager.isLoggedIn();
    }

    private    class 
MyTaskRating extends AsyncTask<StringVoidString> {

        
ProgressDialog pDialog;

        @
Override
        
protected void onPreExecute() {
            
super.onPreExecute();

            
pDialog = new ProgressDialog(MovieDetailsActivity.this);
            
pDialog.setMessage("در حال بارگذاری...");
            
pDialog.setCancelable(false);
            
pDialog.show();
        }

        @
Override
        
protected String doInBackground(String... params) {
            return 
JsonUtils.getJSONString(params[0]);
        }

        @
Override
        
protected void onPostExecute(String result) {
            
super.onPostExecute(result);

            if (
null != pDialog && pDialog.isShowing()) {
                
pDialog.dismiss();
            }

            if (
null == result || result.length() == 0) {
                
showToast("محتوایی یافت نشد");

            } else {

                try {
                    
JSONObject mainJson = new JSONObject(result);
                    
JSONArray jsonArray mainJson.getJSONArray(Constant.CATEGORY_ARRAY_NAME);
                    
JSONObject objJson null;
                    for (
int i 0jsonArray.length(); i++) {
                        
objJson jsonArray.getJSONObject(i);
                        
rate_msg=objJson.getString(Constant.RATE_MSG);
                    }

                } catch (
JSONException e) {
                    
e.printStackTrace();
                }
                
setAdapterToListviewRate();
            }

        }

        public 
void setAdapterToListviewRate() {

            
showToast(rate_msg);

            if(
rate_msg.equals("شما قبلا امتیاز داده اید"))
            {

            }
            else
            {

            }

        }
    }

    private    class 
MyTaskView extends AsyncTask<StringVoidString> {

        
ProgressDialog pDialog;

        @
Override
        
protected void onPreExecute() {
            
super.onPreExecute();

            
pDialog = new ProgressDialog(MovieDetailsActivity.this);
            
pDialog.setMessage("Loading...");
            
pDialog.setCancelable(false);
            
pDialog.show();
        }

        @
Override
        
protected String doInBackground(String... params) {
            return 
JsonUtils.getJSONString(params[0]);
        }

        @
Override
        
protected void onPostExecute(String result) {
            
super.onPostExecute(result);

            if (
null != pDialog && pDialog.isShowing()) {
                
pDialog.dismiss();
            }

            if (
null == result || result.length() == 0) {
                
showToast("No data found from web!!!");

            } else {

                try {
                    
JSONObject mainJson = new JSONObject(result);
                    
JSONArray jsonArray mainJson.getJSONArray(Constant.CATEGORY_ARRAY_NAME);
                    
JSONObject objJson null;
                    for (
int i 0jsonArray.length(); i++) {
                        
objJson jsonArray.getJSONObject(i);
                        
rate_msg=objJson.getString(Constant.RATE_MSG);
                    }

                } catch (
JSONException e) {
                    
e.printStackTrace();
                }
                
setAdapterToListviewRate();
            }

        }

        public 
void setAdapterToListviewRate() {

            
//showToast(rate_msg);

            
if(rate_msg.equals("You Have Already Views"))
            {

            }
            else
            {


            }

        }
    }

ممنون میشم خودتون بازبینی کنید ببینید کجای کار ایراد داره و مطمئنم یک مشکل جزئی بیش نیست که من رو دو یه هفته است سردر گم کرده است

 
پاسخ
 سپاس شده توسط شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پیام‌های این موضوع
RE: عدم نمایش کلمات فارسی در webview (در برنامه نویسی اندروید) - توسط reza5791 - ۱۳۹۴/۰۷/۲۵, ۰۶:۱۷ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان